responsive design: 2 Menüs

  • Hallo, ich versuche ein voll funktionierendes responsive Menü in WordPress zum Laufen zu bringen.
    Es gibt einmal ein normales horizontales Menü, das ab einer bestimmten Bildschirmgröße zum Icon wird, bei Klick erscheint dann ein Javascript Drop-down Menü. Leider funktioniert das Drop-down Menü gar nicht in WordPress.

    Folgender Code zum Aufruf der JS Dateien, die im Theme Ordner liegen steht dafür in der header.php:

    PHP
    <script type='text/javascript' src='<?php bloginfo('template_url'); ?>/js/main.js'></script><script type='text/javascript' src='<?php bloginfo('template_url'); ?>/js/jquery.js'></script>

    So wird das horizontale Menü im <body> aufgerufen (das funktioniert):

    HTML
    <a href="#" class="menu_icon" id="menu_icon"></a>            <nav id="nav_menu">                <?php wp_page_menu('show_home=Home&depth=1'); ?>            </nav>

    Das ist die JS Datei zum Aufruf des Drop-down Menüs:
    $(document).ready(function(){


    Code
    /*  hide-show mobile menu  */
        $("#menu_icon").click(function(){
            $("#nav_menu").toggleClass("show_menu");
            return false;
        });
    
    
    
    
    });
    • 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

  • was ich mir adhoc vorstellen könnte, dass die main.js erst hinter der jquery.js geladen werden sollte.

    [size=10]Bitte immer zuerst die Forensuche nutzen und erst danach Deine Fragen hier im Forum stellen, denn sehr vieles wurde schon mehrfach beantwortet. Bitte dabei auch die Forenregeln beachten.
    Kein Support per PN - Fragen gehören ins Forum.[/SIZE]
    [size=8]Wenn du eine weise Antwort verlangst, musst du vernünftig fragen. (Johann Wolfgang von Goethe)[/SIZE]

  • Ändere mal den Inhalt der main.js in


    Grund:
    bei dir läuft jquery im compatibility mode. D.h. du hast nicht von Haus aus zugriff auf "$" und das führt bei dir zu einem JS-Fehler.

  • Danke euch allen, es funktioniert.
    Ich musste nur wie beschrieben die Reihenfolge ändern.

    Kannst Du mir das mit dem compatibility mode und $ noch mal genauer erklären. Ich hab es geändert, kapier aber nicht warum…

Jetzt mitmachen!

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