jQuery find * all but :not this class?



我知道您可以使用:not选择器来排除类/id,但我正在尝试将其与* all一起使用。

    if(jQuery(e.target).is( jQuery(el).find('*:not(.exit-builder)') )){
        return;
    }

正在尝试从事件中排除所有元素,我这样做是有充分理由的。 实质上发生的情况是,单击<div class="parent">时将触发事件,但排除父级下的所有子级(嵌套子级和所有类型的元素)。我的意思是该解决方案非常适合我,但是我在*中有一个需要触发的元素,那就是具有类.exit-builder的元素。

我想我可以把 * 变成 .children().children() 或类似的东西,但我认为这听起来不对,类似的东西可能会起作用......我继续砍掉,希望有人知道我在说什么:)

试试 .filter()

if(jQuery(e.target).is( jQuery(el).filter(':not(.exit-builder)') )){
        return;
    }

试试这个 http://jsbin.com/uVACoLE/1/edit

这是工作示例。

最新更新