2017-12-04 3 views
0

Ich entwickle eine super einfache Website mit jQuery und Bootstrap-Bibliotheken, aber ich möchte die Menüelemente zu dem Abschnitt springen (bereits mit Ankern getan). Aber wenn ich zurück nach oben navigiere, ist das Menü-Dropdown immer noch geöffnet. Wie würde ich einen Schalter einrichten, damit er beim Klicken auf einen Menüeintrag geschlossen wird?Hamburger Toggle-Menü für eine Seite Website

Dies ist mein erster Code:

$(document).ready(function() { 
    $(".cross").hide(); 
    $(".menu").hide(); 
    $(".hamburger").click(function() { 
    $(".menu").slideToggle("slow", function() { 
     $(".hamburger").hide(); 
     $(".cross").show(); 
    }); 
    }); 
    $(".cross").click(function() { 
    $(".menu").slideToggle("slow", function() { 
     $(".cross").hide(); 
     $(".hamburger").show(); 
    }); 
    }); 
}); 



<button class="hamburger">&#9776;</button> 
<button class="cross">&#735;</button> 

<div class="menu"> 
<ul> 
<a href="#"><li>Home</li></a> 
<a href="#about"><li>Jeff Anderson</li></a> 
<a href="#"><li>Hand Built Frames</li></a> 
<a href="#"><li>Bike Repairs and Maintenance</li></a> 
<a href="#"><li>Frames and Accessories</li></a> 
    <a href="#"><li>Contact</li></a> 
</ul> 
</div> 
</div> 

Jede Hilfe sehr geschätzt. Vielen Dank.

+1

Können Sie Ihren Code teilen, damit wir Ihnen helfen können –

+1

Mögliches Duplikat von [Klicken Sie auf das äußere Menü, um in jquery zu schließen] (https://stackoverflow.com/questions/2868582/click-outside-menu-to-close-in -jquery) –

+0

was sind .cross .menu .hamburger? Können Sie Ihren HTML-Code auch zeigen? Bearbeiten Sie einfach Ihre Frage. Keine Notwendigkeit, ein weiterer Beitrag zu sein. –

Antwort

0

Alles, was auf das Dokument bekommt, wird in der Dropdown-

$(document).click(function(){ 
    $("#dropdown").hide(); 
}); 

Klicks in der Dropdown verstecken wird es nicht über den Drop-Down machen sich

$("#dropdown").click(function(e){ 
    e.stopPropagation(); 
}); 

ich diesen Code glaube Zugabe wird Ihr Problem lösen .