次のスニペットを使用して、ユーザーがアンカーにカーソルを合わせているかどうかを Chrome/Safari & FF で判断しています。
var isURL = $("a", obj).is(":hover");
:hover が CSS セレクターであるというさまざまな投稿を見てきましたが、obj 内にリンクが 1 つある場合にコードがtrueを返し、2 つ以上ある場合はjavascript 認識されない式ホバーエラーをスローする理由がわかりません。 .
ここに :hover のフィドルがあります: - http://jsfiddle.net/2kyaJ/122/
同じだが複数の要素 (機能しない): - http://jsfiddle.net/2kyaJ/121/
誰かが私にこれを説明できますか?
ところで、これを見たことがあります...マウスがjQueryの要素の上にあるかどうかを確認するにはどうすればよいですか?
4 年経った今でも、これはユーザーが要素の上にカーソルを置いているかどうかを判断するための最善かつ一見唯一の方法ですか? はいの場合、誰かが例を提供できますか?
編集:私が必要としていたものを正確に釣りに行かなければなりませんでしたが、これは非常にうまく機能するのと同じくらい簡単です。
私は現在、親要素(obj)のマウスオーバーでアニメーションをトリガーしているjQuery 1.9.1のプラグイン内で使用しています。他の誰かが将来的に役立つことを願っています。.size はバージョン 1.8 以降では廃止されているため、.size の代わりに .length を使用してください。
function isMouseOver() {
if ($('a:hover', obj).length != 0) {
return true;
} else {
return false;
}
}
使用法:
var isURL = isMouseOver();