0

这是jQuery代码

$(document).ready(function(){
    $("#menu li").hover(
        function(){
            $(this).children(":hidden").stop().slideDown();
        },
        function(){
            $(this).parent().find("ul").slideUp();
        }
    );
});

菜单会删除一个无组织的 html 列表,该列表工作正常,不是问题。

当菜单删除隐藏列表时,它允许在另一个仍然向上滑动时发生另一个下降。有没有办法阻止新列表向下滑动而另一个列表仍在向上滑动?

例如,如果您查看此网站的导航菜单栏,它会向您显示我的意思是在另一个下拉菜单返回之前您不能查看另一个下拉菜单。

orderstore.co.uk

这就是问题: 在此处输入图像描述

我的问题的 Jsfiddle:http: //jsfiddle.net/hSH7e/2/

4

1 回答 1

0

您需要重置其他人,然后展开它:

$(document).ready(function(){
    $("#menu li").hover(
        function(){
            if ($("#menu li").find("ul:visible").length)
            {
                curMenu = this;
                $("#menu li").find("ul:visible").slideUp(function(){
                    $(curMenu).children(":hidden").stop().slideDown();
                });
            }
            else
                $(this).children(":hidden").stop().slideDown();
        },
        function(){
            $(this).parent().find("ul").slideUp();
        }
    );
});

小提琴:http: //jsfiddle.net/praveenscience/hSH7e/5/

于 2013-10-27T10:15:29.480 回答