Twenty Fifteen - Menüs geöffnet lassen

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • du kannst dir das mal durchlesen

    http://forum.wpde.org/design/140334-…ufgeklappt.html

    dadurch öffnet sich das Menü bei hover, also wenn man mit der Maus drauf ist, man muss nicht mehr klicken

    wenn das Menü offen bleiben soll, auf der angeklickten Seite, das geht auch, z.B. über die Page ID

    Beispiel die Seite Galerie

    Code
    .page-id-60 .main-navigation li ul {
        display: block;
    }

    Galerie und Architektur, wäre

    Code
    .page-id-60 .main-navigation li ul, .page-id-18 .main-navigation li ul {
        display: block;
    }

    und so kannst du alle Seiten über die ID hinzufügen, bei denen die Untermenüpunkte angezeigt werden sollen

    du kannst natürlich auch generell immer die Untermenüs anzeigen

    Code
    .main-navigation li ul {
        display: block;
    }

    Einmal editiert, zuletzt von Tutrix (18. März 2015 um 19:42)

  • da die Frage sicher noch öfters kommt, hab ich mal etwas gebastelt

    füge mal statt der CSS Änderungen oben, dies

    PHP
    jQuery('.current-menu-item .sub-menu, .current-menu-parent .sub-menu').addClass('toggled-on');

    in die functions.js (im js-Ordner) ein

    ist nicht getestet, müsste aber funktionieren

  • Da bin ich erstmal komplett überfordert. Ich habe bis jetzt immer nur mit dem Designer gearbeitet. Ein paar mehr Details wären da hilfreich.

  • falls du von dem js-Code sprichst

    setze in mal direkt vor/über

    Code
    $( '.dropdown-toggle' ).click( function( e ) {

    also

    Code
    jQuery('.current-menu-item .sub-menu, .current-menu-parent .sub-menu').addClass('toggled-on');  
    $( '.dropdown-toggle' ).click( function( e ) {
  • Ein Teilerfolg. Beim ersten Mal bleibt das Menü offen. Dafür werden aber die Untermenüs auch noch geöffnet. Beim nächsten Mal klappt es dann wieder zu. Ich lass es mal so, dann kannst du die evtl. selbst ein Bild davon machen.

  • Dafür werden aber die Untermenüs auch noch geöffnet. Beim nächsten Mal klappt es dann wieder zu.

    was genau willst du erreichen?

    das was aufklappt sind alles Untermenü-Punkte, diese klappen bei anklicken eines Hauptmenü-Punktes wieder zu

    mit

    Code
    jQuery( '.main-navigation .current-menu-ancestor > .sub-menu' ).addClass( 'toggled-on' );


    bleibt nur das Untermenü offen, bei dem ein Punkt davon aktiv ist
    also dann alten Code entfernen und diesen einfügen

    wenn generell nichts mehr klappen soll :lol:, also immer alles offen, hab ich ja oben auch schon geschrieben

  • Erreichen möchte ich eigentlich nur, dass Menüs die einmal geöffnet wurden, dann auch offen bleiben bis der Benutzer sie wieder schließt. Im Optimalfall auch automatisch wenn jemand auf einen anderen Hauptmenüeintrag klickt. Momentan ist es aber so, dass die Untermenüs der zweiten Ebene (unter Galerie\Landschaft) aufgehen wenn ich z.B. das Untermenü 'Architektur' wähle. Zum anderen geht die gesamte Menüstruktur wieder zu wenn ein Menüeintrag der dritten Ebene (zB. Galerie\Landschaft\Fichtelgebirge) ausgewählt wird.

  • Erreichen möchte ich eigentlich nur, dass Menüs die einmal geöffnet wurden, dann auch offen bleiben bis der Benutzer sie wieder schließt.


    das dürfte dann über Cookies laufen, das es ja Nutzerspezifisch ist


    Im Optimalfall auch automatisch wenn jemand auf einen anderen Hauptmenüeintrag klickt


    und der neue Code, erfüllt das auch nicht?!

  • Doch, das geht, danke. Das Hauptproblem ist momentan, das die Struktur bei Auswahl eines Eintrags der dritten Ebene wieder zuklappt.

    Mit Nutzer meinte ich in der Sitzung. Also nichts mit Cookies. So kompliziert muss das nicht sein.

  • OMG, den zweiten hatte ich völlig übersehen. Das muss ich erstmal probieren. Sorry! Ich bezoge mich auf den ersten Code von dir.

    Also den: [FONT=Courier New][COLOR=#0000BB]jQuery[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]'.current-menu-item .sub-menu, .current-menu-parent .sub-menu'[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]addClass[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]'toggled-on'[/COLOR][COLOR=#007700]); [/COLOR][/FONT]

    Da stimmt bis auf das Zuklappen der gesamten Struktur bei Auswahl der dritten Ebene eigentlich alles.

  • ach ja, verwende den Code mal so

    PHP
    $( '.main-navigation .current-menu-ancestor > .sub-menu' ).addClass( 'toggled-on' );

    also jQuery durch $ ersetzen

    das jQuery brauche ich nur, wenn ich über Firebug bei dir den Code teste

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!