2010-06-07 33 views

回答

11

您可以測試標籤名稱是這樣的:

jQuery('#urDivId').parent().is('body') 
1

只要你能夠使用父功能jquery('#yourElement').parent();,如果它給你的身體標籤比你可以找到它的直接子體。

+1

它是'jQuery',大寫'Q'。 ;-) – Tomalak 2010-06-07 14:47:46

3

>表示直接孩子。 $('body > *')爲您提供身體標記的所有孩子,因此您可以始終使用:not()來反轉:$('*:not(body > *)');不過這可能會很慢。

filter()也會爲你工作,並可能會更快:$('body *').filter(function(){ return $(this).parent('body') });

上述任何一種應該給你一個完整的一套不屬於body標籤的所有子元素。

請注意,這裏可能會有大量的元素被選中;你會想讓你的選擇器儘可能具有特定的性能,你應該避免使用通配符,爲了上面的例子我使用了通配符。

0

很多很好的答案。如果您對鏈接感興趣,可以使用parent():not() selector

var $possible_targets = [...]; // all the elements you want to check 
function do_something_to_target() { 
    [...]; // insert blinking text code here! 
} 

$possible_targets.parent(':not(body)').each(do_something_to_target); 
相關問題