Ergebnis 1 bis 7 von 7

Thema: Liste in einem Artikel - zerschiesst das aktiv setzen der Navigation (3.2.10)

  1. #1
    Contao-Fan Avatar von Gassi
    Registriert seit
    18.11.2009.
    Ort
    Konstanz
    Beiträge
    425

    Standard Liste in einem Artikel - zerschiesst das aktiv setzen der Navigation (3.2.10)

    Hallo,
    kurioserweise kann ich in keinem Artikel eine Liste einfügen. Sobald ich das mache - spinnt die Navigation. Es setzt dann automatisch den letzten Menüpunkt aktiv - sobald ich in die Höhe der Liste komme?!
    Was ist denn da passiert?

    Grüsse Gassi

  2. #2
    Wandelndes Contao-Lexikon Avatar von tab
    Registriert seit
    22.10.2013.
    Beiträge
    10.077
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Mit der ganz normalen Standardnavigation? Oder benutzt du da ein eigenes Template für die Ausgabe? Kannst du mal genau beschreiben, was du gemacht hast? Am besten wäre ein Link mit dem Problem oder wenigstens ein Seitenquelltext.

  3. #3
    Contao-Fan Avatar von Gassi
    Registriert seit
    18.11.2009.
    Ort
    Konstanz
    Beiträge
    425

    Standard

    Hi,
    habe die Onepagenavigation eingebaut mit folgendem Quelltext:
    Code:
    <!-- indexer::stop -->
    <nav class="mod_onepagewebsitenavigation block">
      <a href="#skipNavigation2" class="invisible">Navigation überspringen</a>
    <ul class="level_1"> 
    <li class="first"><a href="#willkommen" title="willkommmen" class="first">willkommmen</a></li> 
    <li><a href="#aktuelles" title="Aktuelles">Aktuelles</a></li> 
    <li><a href="#bilder" title="Bilder">Bilder</a></li> 
    <li><a href="#informationen" title="Informationen">Informationen</a></li> 
    <li class="last"><a href="#anfahrt" title="Anfahrt" class="last">Anfahrt</a></li> 
    </ul>
      <a id="skipNavigation2" class="invisible">&nbsp;</a>
    </nav>
    <!-- indexer::continue -->
    dann der Artikel wo die navi zerschossen wird:
    Code:
     
    <li id="aktuelles" class="page page_1 aktuelles"> 
    <div class="wrapper"> 
        <div class="main block"> 
            <div class="mod_article block" id="aktuelles">
            <div class="ce_text block">
    
          <h1>Aktuelles</h1>
      <p>
     Text
    </p>
    <ul>
     <li>Text1</li>
     <li>Text2</li>
    </ul> 
    </div> 
        </div>        
        </div> 
     
    </div> 
     
    </li>
    Wenn ich aus der Liste normalen Text mache - geht es - sobald ich wieder eine Liste mache - passierts.

    Hoffe das bringt was?!

    Grüsse Gassi

  4. #4
    Contao-Urgestein Avatar von Tim G
    Registriert seit
    13.02.2010.
    Ort
    Lübeck
    Beiträge
    2.210
    User beschenken
    Wunschliste

    Standard

    Ist das aktuelle Version bzw. aktuelles Template? Hier fehlt eine ID der Navigation. Die kommt ggf. vordefiniert rein, damit das Javascript einen exakten Selektor hat und nicht, wie es hier scheint, durch den Artikel läuft und li Elemente sucht - wie in der Navi.
    Was auch unsauber ist sein die doppelten IDs in dem Artikel. Einmal der onepage wrapper (der ist gut), dann bekommt der Artikel selbst noch einmal die id="aktuelles", eigentlich sollte hier bereits die Fehlerconsole anspringen und die Dopllung aufzeigen.
    http://www.tim-gatzky.de ˙ auch schon wieder 2 Jahre alt - wie die Zeit vergeht... muss mal umbauen.

  5. #5
    Contao-Fan Avatar von Gassi
    Registriert seit
    18.11.2009.
    Ort
    Konstanz
    Beiträge
    425

    Standard

    Hi ,
    habe mir die Version vor 3 Wochen von Github gezogen....
    Also dem Artikel hab ich eine andere id vergeben - das bringt schonmal nichts.

    Wie soll ich denn die vordefinierte id der navigation für das JS vergeben?
    Das Template ist das akutelle - aber evtl. muss ich aber das ganze Modul updated -da ich für die bestimmung in welchem menüpunkt man sich befindet - nur das Navitemplate upgedatet habe....kann es daran liegen?!

    Danke und Gruss
    Gassi
    Geändert von Gassi (09.09.2014 um 12:46 Uhr)

  6. #6
    Contao-Fan Avatar von Gassi
    Registriert seit
    18.11.2009.
    Ort
    Konstanz
    Beiträge
    425

    Standard

    Also ich habe das Problem immer noch,
    ich denke es müsste auf jeden Fall an der Datei moo_onepagewebsitenavigation.html5 liegen:
    Da ist jedoch in der var ObjNavi die klasse der navigation angegeben - aber irgendwie scheint da ein Problem mit der Listenverarbeitung zu sein?!

    HTML-Code:
    <script type="text/javascript">
    /* <![CDATA[ */
    
    /**
     * Toggle active state for OnePageWebsite Navigation module
     */
    window.addEvent('domready', function() 
    {
    	var objNavi = $$('.mod_onepagewebsitenavigation');
    	if(objNavi.length < 1)
    	{
    		return;
    	}
    	
    	// examine url params for hash params
    	var strHash = window.location.hash;
    	var arrHash = strHash.split("#");
    	var arrParamsIgnore = new Array('top');
    	var params = new Array();
    	for(var i=0; i<arrHash.length; ++i)
    	{
    		if(arrHash[i].length > 0)
    		{
    			var hash = arrHash[i].replace('#','');
    			if(!arrParamsIgnore.contains(hash))
    			{
    				params.push(arrHash[i]);
    			}
    		} 
    	}
    	
    	
    	var last = null;
    	
    	// circle through all navigation elements
    	objNavi.each(function(navi)
    	{
    		// get all possible buttons
    		var objAnchors = navi.getElements('li > a');
    		
    		// set state on load
    		objAnchors.each(function(anchor)
    		{
    			var href = anchor.get('href');
    			href = href.replace('#', '');
    			
    			if(params.contains(href))
    			{
    				anchor.addClass('active');
    				anchor.getParent('li').addClass('active');
    			
    				last = anchor;
    			}
    		});
    		
    		// add eventhandlers
    		objAnchors.addEvent('click',function()
    		{
    			if(last != this)
    			{
    				if(last != null)
    				{
    					last.removeClass('active');
    					last.getParent('li').removeClass('active');
    				}
    				
    				// get anchor
    				var href = this.get('href');
    				href = href.replace('#', '');
    				
    				this.addClass('active');
    				this.getParent('li').addClass('active');
    				
    				last = this;
    			}
    		});
    	});
    
    });
    
    
    /* ]]> */
    </script>
    Oder denk ich falsch?!

    Danke und Gruss

    Gassi

  7. #7
    Contao-Fan Avatar von Gassi
    Registriert seit
    18.11.2009.
    Ort
    Konstanz
    Beiträge
    425

    Standard

    So,
    ich habe die Lösung nun selber gefunden...
    Im Javascript werden wohl alle li's durchgegangen, da ja die einzelnen Seiten in Listenpunkte drin liegen....
    Da aber das skript alle li's der Inhaltseiten durchsucht - läuft es bei mir falsch....

    Ich habe nun das skript erweitert
    PHP-Code:
    var objPages = $$('.mod_onepagewebsiteregular li.page');
    if(
    objPages.length 1)
    {
    objPages = $$('.mod_onepagewebsitecustom li.page'); 
    -dann werden auch nur noch die ankerpunkte bzw. die einzelnen Seiten durchgezählt....
    Wundert mich das es nur bei mir solch Fehler gab?!

    Gruss Gassi

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •