jquery选择器必须选择一个区域中没有元素的区域

时间:2011-05-07 15:25:23

标签: jquery-selectors

我对div使用jquery click事件,div区域有一个input元素。因为输入元素在div中,当我单击输入时,单击功能可以工作,但我不想要这个动作。 我查看了Jquery网站上的选择器页面,但是我找不到这个选择器。我怎么能这样做?

1 个答案:

答案 0 :(得分:1)

使用nodeNameoriginating element属性查看事件的来源:

$('#myDiv').click(function(event) {
    if (event.target.nodeName.toLowerCase() === 'input') {
        return; // ignore the event if it originated on an input element
    }

    // do the rest of your code
});

如果您想要更复杂的查询(例如使用jQuery伪选择器),您可以使用is

$('#myDiv').click(function(event) {
    if ($(event.target).is('input[name="foo"]')) {
        return; // ignore the event if it originated on an input element with the name foo
    }

    // do the rest of your code
});