これが私が使用しているjQueryの結果であるかどうかはわかりませんが、これは私がやろうとしていることです:
<div class="info" style="display: inline;"
onMouseOut="$(this).children('div').hide('normal');"
onMouseOver="$(this).children('div').show('normal');"
>
<img src="images/target.png">
<div class="tooltiptwo" id="tooltip"
style="font-weight: normal; font-size: 0.8em;" >TOOLTIP TEXT</div>
</div>
基本的な CSS と jQuery に精通している人には、簡単なアニメーションをツールチップに追加しようとしています。問題は、そのようなアニメーションのトリガーです。アニメーションが発生したときに、ユーザーがマウスをツールチップの上に移動すると、ユーザーがマウスを離すまでアニメーションが表示と非表示のループに入るようです。マウスが親divの外に移動したときにアニメーションを一度だけ消したいので、これは望ましくない効果です。ツールチップが親 div から離れて表示されるように CSS を配置しましたが、アクションは親でのみトリガーされ、その子ではトリガーされません。
基本的に、これを達成するにはどうすればよいですか?親要素のホバー/アウト状態が、子のホバー/アウト状態が何もせずに、その親の子で関数 (アニメーション) をトリガーするようにします。onMouseOver
andの通常のメソッドはonMouseOut
、そのメソッドが属する親の子に対してもトリガーしているように見えます。これは、かなり望ましくない影響を引き起こしています。
私はjQueryを初めて使用することに注意してください(これまでのところ驚くべきことですが、できれば自分のサイトをその良さで覆いたいと思っています)、jQueryを使用してホバー/アウト状態を実現するより良い方法があるかどうかはおそらくわかりませんそれらについて。