我想解決一些困難,有一點問題。.find(someElem)的對面,即。想要省略兒童如果e.target事件處理程序
所以,我想跟蹤頁面上的所有點擊,只做一些事情,如果e.target不是某些元素的孩子。所以我有:
jQuery('body').click(function(e){
// some stuff
// do some more stuff
if(!(jQuery('#element1, #element2, #element3').find(e.target))){
// do something extra here ONLY if the target is NOT a child
// of any of those elements
}
})
這似乎沒有工作。我嘗試了一些其他的東西來得到「未發現」的氛圍,ala,.not,!()等等。不能。似乎忽略了整個代碼。即使我做了一個簡單的測試:
// I expressly click outside this area of element1, still captures it.
if(jQuery('#element1').find(e.target)){
console.log('in')
e.stopPropagation();
// failes
這就是匹配的一個非常緩慢的方式,相對於從點擊目標檢查備份層次結構(即使用父母()或類似)。 –
@TrueBlueAussie:還在編輯,我正在寫那個:) – Jon
我喜歡走父母的路線。只是沒有發生在我身上,非常感謝你! –