2016-11-24 3 views
0

Ich arbeite derzeit an einem Menü mit einem Dropdown-Klick.jQuery Menü toggle onclick

Aber wie Sie aus dem JsFiddle sehen können, funktionieren alle Links aus dem innersten UL nicht.

Hier ist mein Javascript Ich verwende: -

$(document).ready(function() { 
    $("ul > .cat-item").click(function(event){ 
     event.preventDefault(); 
     $(this).find("ul").show(); 
    }); 
}); 

jsfiddle: - https://jsfiddle.net/d3p121mc/

Jeder Stoß in die richtige Richtung wäre sehr hilfreich.

Als Sie im Voraus.

+0

haben Sie nur einzelne innere 'ul' bei Residential. Und es arbeitet in der Geige. Können Sie das Problem bitte bestätigen? – vijayP

+0

Zum Beispiel funktioniert der Link "Alle" nicht. –

+0

aber alle haben keine innere 'ul' – vijayP

Antwort

0

Ich reparierte das Problem durch die JS auf die folgende Veränderung: -

$("section > ul > li > a").click(function() { 
    $('ul.children').not($(this).siblings()).slideUp(); 
    $(this).siblings("ul.children").slideToggle(); 
}); 
$("section > ul > li").click(function(e){ 
    if($(this).find('.children').length > 0){ 
     e.preventDefault(); 
    } 
}); 
$("section > ul > li > .children > li > a").click(function() { 
    window.location = $(this).attr('href'); 
}); 

Wenn es einen besseren Weg, lassen Sie es mich ist schon?