Javascript Jquery简单菜单

Javascript Jquery简单菜单,javascript,jquery,Javascript,Jquery,我需要创建一个与此相同的菜单: 单击集合,然后单击制造商,然后再次单击制造商以关闭。正如您所看到的,首先它会向下滑动,然后它只会更改链接,而不会再次上下滑动,直到您单击相同的打开元素 我第一次尝试这个: $('ul.sub-menu').hide(); $('.sf-menu').children('li').click(function(){ $(this).children(".sub-menu").slideToggle('slow'); $('ul.sub-menu

我需要创建一个与此相同的菜单:

单击集合,然后单击制造商,然后再次单击制造商以关闭。正如您所看到的,首先它会向下滑动,然后它只会更改链接,而不会再次上下滑动,直到您单击相同的打开元素

我第一次尝试这个:

$('ul.sub-menu').hide();
$('.sf-menu').children('li').click(function(){  
    $(this).children(".sub-menu").slideToggle('slow');
    $('ul.sub-menu').hide();
$('.sf-menu').children('li').click(function(){  

$(this).children(".sub-menu li")
它的工作,但它的上下滑动,每次你们点击菜单,而不仅仅是改变列表项目。所以我想,我需要以儿童li元素为目标,而不是ul元素。另外,如果您在各个列表项之间单击,它需要像在该菜单上一样切换,但如果我再次单击同一打开的列表项,它需要关闭(向上滑动)

非常感谢,因为我花了半天的时间想弄明白。还有如何针对儿童李,我尝试了以下方法:

$('ul.sub-menu').hide();
$('.sf-menu').children('li').click(function(){  
    $(this).children(".sub-menu").slideToggle('slow');
    $('ul.sub-menu').hide();
$('.sf-menu').children('li').click(function(){  

$(this).children(".sub-menu li")

但是什么都没有。

您可以尝试将单击绑定到子菜单,并使用
e.stopPropagation()
e.stoppimediatepropagation()


这将不允许在单击子菜单时关闭它们。

您可以尝试将单击绑定到子菜单,并使用
e.stopPropagation()
e.stoppimediatepagation()


这将不允许在您单击子菜单时关闭它们。

谢谢rcdmk,我可以看到它在JSFIDLE上工作,但出于某种原因,它不想在我的wordpress网站上工作:tigontel.com,您可以在页脚中看到脚本。啊,最后,它工作了。我的站点使用的是旧的1.4.7jQuery,方法“on”不起作用。谢谢你,伙计,你帮我省了很多时间。谢谢你,rcdmk,我可以看到它在JSFIDLE上工作,但由于某种原因,它不想在我的wordpress网站上工作:tigontel.com,你可以在页脚看到脚本。啊,最后,它工作了。我的站点使用的是旧的1.4.7jQuery,方法“on”不起作用。谢谢你,伙计,你帮我省了很多工作时间。