クリックした要素が特定の DIV 要素の子でない場合、どうすれば確認できますか?
$("body").click(function(e) {
if(e NOT child of $('#someDiv')) alert(1);
});
クリックした要素が特定の DIV 要素の子でない場合、どうすれば確認できますか?
$("body").click(function(e) {
if(e NOT child of $('#someDiv')) alert(1);
});
if ($(e.target).parent('#someDiv').length == 0) {
...
}
それとも、(「e の祖先ではない」) という意味でしたか:
if ($(e.target).closest('#someDiv').length == 0) {
セレクターでメソッドを使用して、parent
そのセレクターに一致する場合、親要素を返すことができます。次に、プロパティをチェックしてlength
、親要素が返されたかどうかを確認できます。
$("body").click(function(e) {
if(!$(this).parent("#someDiv").length) {
alert("Not a child");
}
});
クリックした要素が先祖ではないかどうかを確認したい場合は、parents
代わりにparent
.
$('yourElement').on('click',function(){
if(!$(this).parents('theDiv').length){
//not a child
}
});