0

mousemove のスムーズなフェードインとフェードアウトで問題が発生しました...トップ要素の下にあるものについていくつかの計算を行っており、それらの計算に基づいて、fadeIn()またはfadeOut()ツールチップを作成します。問題は、マウスを動かすと、数ミリ秒ごとにイベントが発生することです。

状況は次のようになります。

マウスを動かすと、ツールチップが非表示になります。突然、マウス ポインターが、fadeIn() をトリガーする必要がある要素の上にありますが、この要素は他の要素の背後にあるため、トリガーではありません。だから私はマウスムーブから撃つ必要がありfadeIn()ます。しかし、私がそれを数ミリ秒ごとに撮影すると、機能しないか、何百万回も機能します。しかし、一般的にはそうではありません... アニメーションは、マウスを動かしている限り動かなくなります。なぜなら、fadeIn() が何度も呼び出されているからです。私はこれに本当にうんざりしています.5時間ほど修正しようとしましたが、何もしませんでした.

私はもう試した:

  1. .stop()fadeIn()/fadeOut()異なる構成で...しかし、私が得た唯一の目に見える効果は、キューを削除して最後のアニメーションの終わりにつながるため、のようshow()に見えることだけでした。stop(true,true)それで、うわー!それはショーです...どのように...エグン...素晴らしいです:/
  2. :visibeセレクターを tofadeOut()および:not(:visible)to に使用するとfadeIn()...まあ..もちろんあまり変わりませんでした。stop()半透明のツールチップが残っていました。
  3. rel属性を使用して、 がすでに撃たれており、もう撃ってはならないことを定義します...fadeOut()合計後に単に戻ってこなかったため、さらに悪い考えですfadeOut()
  4. リセットしたいのですが、この問題を解決しないと休めません。とても面倒です。

とにかく誰かがこれを読むのだろうか... 私はしないだろう.

fadeOut()では、イベントを毎回 1 つに制限して、fadeIn()イベントが mousemove によってトリガーされたときに、アニメーションの途中からでもスムーズにフェードインおよびフェードアウトする方法を教えてください。

私はおそらく-1000この質問に答えるでしょう... うん。

4

3 に答える 3

0

FadeIn/fadeOut の前にイベントのバインドを解除し、アニメーションの完了後に再度バインドを試みることができます (完了機能)。

于 2013-09-02T10:22:18.490 に答える