gpt4 book ai didi

javascript - 由于我已将 mouseover 和 mouseout 事件附加到 HTML 中的每个元素,如何防止少数 HTML 元素发生相同事件?

转载 作者:可可西里 更新时间:2023-11-01 13:37:14 25 4
gpt4 key购买 nike

$('body').on('mouseover mouseout', '*:not(.printToolBar)', function (e) {
if (this === e.target) {
(e.type === 'mouseover' ? setMenuBox(e.target) : removeMenuBox(e.target));
}
});

我也尝试了 .on.off 方法,但无法获得所需的结果。

最佳答案

简单地从您的原始绑定(bind)中排除不需要的元素:

$('body').on('mouseover mouseout', '*:not(.undesiredelements)', function (e) {
if (this === e.target) {
$(e.target).css('border', (e.type === 'mouseover' ? '1px solid blue' : ''));
}
});

“删除某些元素的绑定(bind)”等同于更改触发处理程序的选择器条件。如果在已经使用松散选择器(如 *)后需要更改绑定(bind),您可以简单地取消绑定(bind)原始处理程序并重新绑定(bind)到所需的元素。

请注意,这里只有 一个 事件处理程序绑定(bind)(即 body 元素)

关于javascript - 由于我已将 mouseover 和 mouseout 事件附加到 HTML 中的每个元素,如何防止少数 HTML 元素发生相同事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13579563/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com