所以我覺得我的標題幾乎含糊不清,但事實是,我甚至不知道如何澄清...因此這個問題。兄弟姐妹/兒童/父母的JQuery選擇器
的Html
<tr>
<div class="thisis(this)inmyexample"></div>
<div class="stuff">
<div class="foo"></div>
</div>
</tr>
我的問題是關於選擇的差異。讓我們假設.stuff
是$(this)
兄弟如果我用這個:
$(this).closest('tr').find('.stuff .foo')
現在,我知道這不是有效的編碼,但它只是作爲一個簡單的例子。有了它,我會找到所有.foo
類別.stuff
的子女。
如果我用這個:
$(this).siblings('.stuff .foo')
我不會發現任何東西。這可能是我對jquery談話的經驗不足,但爲什麼不會有那種類型的選擇器(你稱之爲使用空間的選擇器或者同時使用這兩個選擇器的選擇器,如'.stuff.foo'
?)可以使用.siblings之類的東西工作?我的期望是,它會找到.stuff
級別的所有兄弟姐妹,然後找到.stuff
的所有子級和.foo
級別的所有子級。這是不是工作,因爲兄弟姐妹/孩子/父母正在尋找兄弟姐妹/父母/孩子,不會看過去?
我知道我可以用這個:
$(this).siblings('.stuff').children('.foo')
,我實現我的目標。我只是好奇,爲什麼我的上面的選擇器(如果這是它正確調用)不起作用。
在此先感謝!
@PranavRam所以這是因爲'.stuff foo'永遠不會是任何事情的兄弟姐妹,對吧? – Aarmora
這是無效的HTML標記 –
@ A.Wolff我不覺得HTML是真正關鍵的問題,除了知道'.stuff'和'$(this)'是兄弟姐妹和'.foo'是孩子'.stuff'。我錯了嗎? – Aarmora