[英]select all but a div with its children with .on()
是的,我知道这是以前问过的,但我找不到我特有的问题的答案。
这真的很接近: jQuery选择除div及其子元素之外的所有元素
但是我想在.on()语句中选择除其子项之外的所有div,像这样(简化)
$('body').on('click', ':not(._project_overlay), :not(._project_overlay *)', globalClickHandler);
我不明白为什么这行不通:-/(我也尝试了上面的每个变体)
这样的事情确实会选择除div及其所有子项之外的所有内容:
$('body').find(':not(._project_overlay *)')
那么为什么在地上将.on()绑定到div的子级?
请帮我 :(
您正在使用多重选择器 ,它与逻辑OR
等效:
:not(._project_overlay) OR :not(._project_overlay *)
因此,它最终与._project_overlay
及其子代匹配。
您需要使用AND
,因此您只需编写以下代码:
:not(._project_overlay):not(._project_overlay *)
使用:not(._project_overlay, ._project_overlay *)
代替,如下所示。
$('body').on('click', ':not(._project_overlay, ._project_overlay *)', globalClickHandler);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.