Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jquery垂直滑动菜单_Javascript_Jquery_Navigation - Fatal编程技术网

Javascript jquery垂直滑动菜单

Javascript jquery垂直滑动菜单,javascript,jquery,navigation,Javascript,Jquery,Navigation,试图实现菜单从:,但不知道如何使当一个子菜单打开时自动关闭自己当另一个子菜单打开时。 thx您可以使用选择器在This.click事件上获取“Not This”,该事件将返回所有其他菜单并允许您关闭它们 提供一些源代码可能会为您提供更好的答案。您可以在打开新开关之前关闭所有打开的开关 $(document).ready(function(){ hideMenus(); $('.toggle').click(function(){ var menu = $

试图实现菜单从:,但不知道如何使当一个子菜单打开时自动关闭自己当另一个子菜单打开时。
thx

您可以使用选择器在This.click事件上获取“Not This”,该事件将返回所有其他菜单并允许您关闭它们


提供一些源代码可能会为您提供更好的答案。

您可以在打开新开关之前关闭所有打开的开关

    $(document).ready(function(){
    hideMenus();

    $('.toggle').click(function(){
        var menu = $(this);
        hideMenus();

        if (menu.hasClass('toggle-open')) {     
            menuHide(menu);
        }else{
            menuShow(menu);
        }
    });
});
function hideMenus(){
    $('.toggle').each(function(){
        menuHide($(this));
    });
}

function menuHide(menu){ 
    menu.removeClass('toggle-open').addClass('toggle-closed').empty('').append('+').parents('li').children('ul').slideUp(250); 
    menu.parent('.menutop').removeClass('menutop-open').addClass('menutop-closed'); 
} 
function menuShow(menu){ 
    menu.parent('.menutop').removeClass('menutop-closed').addClass('menutop-open'); 
    menu.removeClass('toggle-closed').addClass('toggle-open').empty('').append('–').parents('li').children('ul').slideDown(250); 
}

谢谢你的帮助。代码在有问题的链接上。所以你已经复制并粘贴了该链接中的html和代码,并试图实现它,但它不起作用?菜单的工作方式与教程中的一样,更改了css和html,但不涉及js所需的id和类。尝试了这个,复制了你给我的代码,现在所有toogle都打开了,没有能力关闭它们。我发布的代码中有一个错误。现在应该可以修复了。谢谢您的帮助,我只是插入了您的代码,但不起作用。在internet中,“浏览”所有菜单都已展开,菜单不响应单击,在其他浏览器中,菜单的工作方式与教程中相同(当其他子菜单打开时,不要关闭)。