0

slideUpjQueryの機能を使用するドロップダウン メニューがあります。一定速度を削除して、速く始めて遅く終わることができないかと思っていました。easingのメソッドについて調べて読んanimateで試してみましたがslideUp、 だけではうまくいかないanimateようです (間違っていたら教えてください); しかし、そうでなければ、私はそれを理解できないようです。何か案は?これが私の現在のコードです:

$(document).ready(function(){
    var h = "fast";

    $("[data-action='dropdown']").click(function(e) {
        e.stopPropagation();
    });

    $("body").click(function() {
        $("[data-action='dropdown'] ul ul").slideUp(h);
    });

    $("[data-action='dropdown'] ul li").click(function() {
        $("[data-action='dropdown'] ul ul").slideUp(h);

        $("ul", this).slideDown(h, function(){
            $("ul", this).slideUp(h);
        });
    });
});

HTML は非常に基本的なドロップダウン構造です (単に s を持つul要素でliあり、次に内部ulの s が内部にネストされています。次に、css で、none の表示で内部ul ulが非表示になる場所に作成し、もちろん、jQuery によって切り替えられます) .

どんな助けでも大歓迎です!:-)

4

1 に答える 1

5

これを行うには、 jQuery イージング プラグインを使用できます。

jQuery イージング Javascript ファイルを含めます。

https://cdnjs.cloudflare.com/ajax/libs/jquery-easing/1.4.1/jquery.easing.min.js

次に、イージング変数をslideUp関数のパラメーターとして使用できます。

Javascript

jQuery('#Example').slideUp({
    duration: 1000,
    easing: 'easeOutCubic'
});

デモ

于 2012-12-08T05:45:59.827 に答える