0

ここにjQueryコードがあります

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

メニューは、正常に機能していて問題ではない、整理されていない html リストをドロップします。

メニューが非表示のリストをドロップすると、別のリストがまだ上にスライドしている間に別のドロップが発生することができます。他のリストがまだ上にスライドしている間に、新しいリストが下にスライドするのを止める方法はありますか?

たとえば、この Web サイトのナビゲーション メニュー バーを見ると、別のドロップダウンが返されるまで、別のドロップダウンを見ることができないという意味が示されます。

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 に答える