我試圖做到這一點,但沒有運氣到目前爲止沒有人知道如何選擇一個元素點擊 但不包括元素在特定的div如.box
和所有內容這div .box
jquery點擊選擇元素,如果它不是在特定的類
小更新: 謝謝你的回覆,但如果我使用:not
或hasClass
它不會保證該foo
內的元素不會被選中。像:
<div class=foo>this won't be selected <span>this will</span></div>
我試圖做到這一點,但沒有運氣到目前爲止沒有人知道如何選擇一個元素點擊 但不包括元素在特定的div如.box
和所有內容這div .box
jquery點擊選擇元素,如果它不是在特定的類
小更新: 謝謝你的回覆,但如果我使用:not
或hasClass
它不會保證該foo
內的元素不會被選中。像:
<div class=foo>this won't be selected <span>this will</span></div>
你可以使用hasClass()
方法:
$('a').click(function() {
if (!(this).hasClass('foo')) {
// the clicked element doesn't have the foo class
}
return false;
});
您還可以使用:不()選擇。
$("#mydiv:not(.box)").click(function(){
//do something
});
,如果您有特定目標的元素,像你想的目標<li>
您指定的容器內,那麼這應該是理想的:
$("#mydiv:not(.box)>li").click(function(){
//do something
});
這應該只適用於點擊()函數將<li>
子容器的容器是不是得到了.box
類。
假設你正在尋找錨,這應該工作...
$(":not(.box) a").click(function() {
// your code here
});
不過,我會建議重新分解您的標記,以使它更容易些。例如,你可以明確地在每個元素上放置一個可點擊/不可點擊的類。
正常工作! if(!domEl.closest('div')。hasClass('box')) – Dejan 2010-11-30 14:32:20