-1
$(function () {
        $("div").toggle(function () {
        $(".green").slideDown('medium');
     }, function () {
        $("div").click(function () {
            $(".green").slideUp('medium');
            });
    });
});

http://jsfiddle.net/bVr2r/181/

動作は、1回のクリック後に展開され、2回目のクリックにのみ不規則に反応します。

何らかの方法で .stop() を使用する必要があると考えましたが、その方法がよくわかりません。このように使用しました $(".green").stop().slideUp('medium'); ただし、アニメーションの動作は完全に停止しました。

助けてくれてありがとう。

4

1 に答える 1

2

トグル関数で別のクリック関数をバインドしています。

クリック機能を削除し、次のように変更します。

$(function () {
    $("div").toggle(function () {
        $(".green").stop().slideDown('medium');
    }, function () {
        $(".green").stop().slideUp('medium');
    });
});

それは動作します: http://jsfiddle.net/bVr2r/182/

于 2013-05-31T17:54:59.717 に答える