1

カレンダー コントロールの日付にマウスを置いたときにツールチップを表示しようとしています。

私はそれぞれ mouseenter/mouseleave イベントを使用して、fadeIn/fadeOut を実行しています。これは機能します。

ただし、私の問題はカレンダーであるため、多くの日があり、マウスを一週間全体で移動すると、すべてのイベントが完了するまで、フェードイン/フェードアウト (または表示/非表示) がすべて順番に発生します。 .. すべて順番に発生しているため、何らかの遅延があります。

これが起こらないようにする最善の方法は何でしょうか?

4

4 に答える 4

2

hoverIntentと呼ばれるこのjQueryプラグインをチェックしてください...それはあなたの問題を修正するはずです。

于 2009-08-10T14:59:46.387 に答える
1

週に親コンテナがある場合は、そのアイテムに影響を与えることができます。

于 2009-06-12T21:03:57.047 に答える
1

1 週間のイベントだけを処理し、どの日が選択されたかを検出することをお勧めします。

于 2009-06-12T21:05:18.820 に答える
0

ツールチップが既に表示されているかどうかを確認するロジックを追加し、表示されている場合は移動してテキストを更新します。

fadeOut難しいのは、テキストが変更されていない場合にのみ発生するようにロジックを追加することです。最初に行うことは、 を使用してフェードする前に小さな遅延を追加することsetTimeoutです。次に、ツールチップ テキストが更新されるたびにインクリメントする変数を作成します。最後に、setTimeout の各呼び出しに整数のコピーが含まれていることを確認し、フェードを呼び出す前に、整数が変更されていないことを確認します。

于 2009-06-12T21:29:27.280 に答える