ページ上のすべての要素の mouseenter / mouseleave イベントを追跡する必要があります。
直感的に書かれたコードは次のとおりです。
$(window).on('mouseenter mouseleave', function(e) {
console.log(e.target, e.type);
// ...
});
ただし、子要素で mouseenter が発生するたびに mouseleave イベントが発生するため、mouseenter/mouseleave のすべての利点が無効になります。つまり、mouseover/mouseout のように機能します。
すべての要素にハンドラを直接アタッチせずにこれを処理する方法はありますか?
これは jQuery のバグのように見えますか? 私が知っていることと、読んだjQueryドキュメントから、上記のコードは正常に機能するように見えるためです。
遊ぶJSBin:http: //jsbin.com/axuluc/2/
編集:これは期待どおりに機能します: http://jsbin.com/axuluc/9/