gpt4 book ai didi

javascript - 如何选择DOM中除一个元素之外的所有元素?

转载 作者:行者123 更新时间:2023-11-28 12:33:41 25 4
gpt4 key购买 nike

我有一个 jQuery 事件,它会在页面上的每个 DOM 元素上触发。目前来说这很好,但我需要一种方法从 DOM 选择中排除 div(也包括子 div),以防止在它们上触发事件。我尝试过 jQuery 的 unbind() , not()off()直接上$('#myDiv') ,但事件仍在触发。

触发事件的代码:

$("*").each(function () {
// here are events bound to every DOM in the page
$(this).mouseover(mouseover).mouseout(mouseout).click(click);
});

我也尝试过

$("*:not(#myDiv)").each(function () {
// events
$(this).mouseover(mouseover).mouseout(mouseout).click(click);
});

并且仍然无法从#myDiv 中删除事件。

HTML:

 <div id="myDiv">
<div class="data">
<!-- -->
</div>
<div class="debug">
<!-- -->
</div>
<div class="form">
<!-- -->
</div>

</div>

进行完整 DOM 选择但排除 #myDiv 的最佳方法是什么,这样我就可以使用 bind()on()用于绑定(bind)事件?

注意:我不想从 DOM 树中删除 #myDiv,而是将其从选择中排除。

最佳答案

你可以试试这个

$(function(){
$('body > *').not('#myDiv')
.on('mouseover', function(){ //... })
.on('click', function(){ //... });
});

An Example.

关于javascript - 如何选择DOM中除一个元素之外的所有元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19395419/

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