1

私は正常に動作するjqueryで拡張メニューを作成しましたが、メニューを何度もすばやくロールインおよびロールアウトすると、メニューが振動し、マウスがメニューからロールアウトした後もアニメーションが開いたり閉じたりし続けます。メニューを開くためのコードは、非常にシンプルです。

$("#links").mouseenter(function(){
    $("#linksBody").slideDown(600, "easeOutExpo");
});

$("#links").mouseleave(function(){
    $("#linksBody" ).slideUp(600, "easeOutExpo");
});

そして、これが私が問題を抱えているサイトです

http://www.pegbarandgrill.com/blog/

右側のリンクとディレクトリ メニューです。この振動の問題を回避する最善の方法を知っている人はいますか?

ありがとう!

4

1 に答える 1

1

これを試して:

$("#links").mouseenter(function(){
    $("#linksBody").stop(1).slideDown(600, "easeOutExpo");
});

$("#links").mouseleave(function(){
    $("#linksBody" ).stop(1).slideUp(600, "easeOutExpo");
});

別の解決策は、hoverIntentのようなプラグインを使用することです

また、次.hover()のようなものを使用して単純化することもできます。

$("#links").hover(function(){
    $("#linksBody").stop(1).slideDown(600, "easeOutExpo");
},
  function(){
    $("#linksBody").stop(1).slideUp(600, "easeOutExpo");
});

また、それeaseOutExpoが問題を引き起こしているのではないかと思います。それなしで試してみて、それが役立つかどうかを確認してください。

于 2012-07-28T10:37:14.303 に答える