$('body').on('mouseover mouseout', '*:not(.printToolBar)', function (e) {
if (this === e.target) {
(e.type === 'mouseover' ? setMenuBox(e.target) : removeMenuBox(e.target));
}
});
私も試してみ.on
まし.off
たが、望ましい結果を得ることができませんでした。
$('body').on('mouseover mouseout', '*:not(.printToolBar)', function (e) {
if (this === e.target) {
(e.type === 'mouseover' ? setMenuBox(e.target) : removeMenuBox(e.target));
}
});
私も試してみ.on
まし.off
たが、望ましい結果を得ることができませんでした。
元のバインディングから不要な要素を除外するだけです。
$('body').on('mouseover mouseout', '*:not(.undesiredelements)', function (e) {
if (this === e.target) {
$(e.target).css('border', (e.type === 'mouseover' ? '1px solid blue' : ''));
}
});
「一部の要素のバインディングを削除する」ことは、ハンドラーが起動されるセレクター条件を変更することと同じです。のような緩いセレクターを既に使用した後にバインディングを変更する必要がある場合は*
、元のハンドラーのバインドを解除し、目的の要素に再バインドするだけです。
ここで発生するイベント ハンドラー バインディングは1 つだけであることに注意してください (つまり、body
要素に対して) 。