1

クリックした要素が特定の DIV 要素の子でない場合、どうすれば確認できますか?

$("body").click(function(e) {
    if(e NOT child of $('#someDiv')) alert(1);
});
4

3 に答える 3

6
if ($(e.target).parent('#someDiv').length == 0) {
    ...
}

それとも、(「e の祖先ではない」) という意味でしたか:

if ($(e.target).closest('#someDiv').length == 0) {
于 2012-04-16T12:55:28.600 に答える
1

セレクターでメソッドを使用して、parentそのセレクターに一致する場合、親要素を返すことができます。次に、プロパティをチェックしてlength、親要素が返されたかどうかを確認できます。

$("body").click(function(e) {
    if(!$(this).parent("#someDiv").length) {
        alert("Not a child");
    }
});

クリックした要素が先祖ではないかどうかを確認したい場合は、parents代わりにparent.

于 2012-04-16T12:55:38.527 に答える
1
$('yourElement').on('click',function(){
      if(!$(this).parents('theDiv').length){
          //not a child
      }
});
于 2012-04-16T12:56:14.453 に答える