2011-07-16 6 views
0

jQueryアニメーションを備えたメニューバーがあります。そこには滑らかな画像効果があります。その上にカーソルを置くと、画像が変わります。メニューバー全体からマウスを離すと、デフォルトのメニューバーに変わります。jQuery Stop Animation

問題:ただし、現在アクティブなアニメーションが完了する前にメニューバー全体にマウスを移動すると、上で説明したデフォルトの画像に変更されず、もう一度マウスが出るまで他の画像に固定されますゆっくり。これは非常に頻繁に起こり、アニメーションがすべての方向を乱してしまいます。

jQueryを使用して、メニュー全体からマウスを離したときに、他のすべてのアニメーションを途中で停止する方法が必要です。したがって、マウスが領域全体を離れるたびに、すべてのアニメーションをキャンセルしてデフォルトに戻すだけです。

私のJSファイルが縮小されていますが、ここで見てみることができます。 http://designsweeter.com/live/bcmedical/wp-content/themes/designsweeter/scripts/menu.js

美化JS: http://designsweeter.com/live/bcmedical/prettymenu.js

+0

対応していないコードを入力してください。それほど多くはできません。私は恐れています。 – karim79

+0

私はそれを持っていません。私のバックアップでHDが失敗しました。私は自分の音楽、編集者にやさしいPNGファイル、PSDファイルなどのバックアップを取っていました。 :/ 現在のアニメーションを停止するjQueryコードはありませんか? – alt

+0

JsBeautifierの機能はあまりよく分かりませんが、私はそのコードをETAしました。 – alt

答えて

2

はあなたのコードのはかなり混乱原因特定の答えを与えるが、これを含めてみてくださいすることはできません折り返し電話。

jQuery('ul.your-menu').mouseout(function() { 
    jQuery(this + ' li').stop(true, true).animate(*YOUR CODE HERE - to return to default image*); 
} 

特定の状況に合わせてセレクタと.animateコードを置き換える必要があります。

希望すると便利です。

+0

2行目では、私がしたように、 'this'変数に追加するのではなく、子関数を使用することができます。 – Toby

+0

私は恐ろしいコードで最初の試行でそれを得たことに驚いています。 (途中で申し訳ありません) – alt