2013-06-24 95 views
0

如果你有以下的html:如何定位jQuery中多個元素內部的元素?

<div class="example"> 
<div> 
    <div> 
    <div> 
     <span></span> 
    </div> 
    </div> 
    </div> 
</div> 

你怎麼能針對這裏面「實例」的具體範圍?而不必寫

$('.example div div div span') 

謝謝你們。

+2

除非有樹等跨度它只是$(「例如跨度」),布提'm確定你的問題還有更多 –

+0

在你想要定位的元素上添加一個類將是最簡單的 – scrappedcola

+0

在'.example'中還有其他'span's嗎? –

回答

3

您不必指定所有嵌套。在CSS選擇器空間中意味着的任何後代,而不是直接子。因此,它應該只是

$('.example span') 

在另一方面,你可能想以限制specifiying span你到底想要的搜索結果。在這種情況下,你會想設置跨度class和id屬性,並進行搜索,使用

$('.example span#spanid') //for id = spanid 
$('.example span.spanclass') //for class = spanclass  

詳見

3

$('.example span')也應該找到它。

1

W3C selectors文件雖然這兩個以前的答案是完全有效的,回答這個問題,我建議,如果可能的話,你添加一個類到你想找到的嵌套元素。沒有任何直接的性能改進,僅僅是語義和清晰度。例如,

$('.example span') 

現在可能會工作,但如果您稍後添加其他跨度,則會中斷。但是,如果將.my_nested_span添加到所需的跨度,然後執行

$('.my_nested_span') 

相反,您應該始終保持良好的未來。

1

你可以給跨度的ID:

<span id="myspan"></span> 

然後它只是:

$('#myspan')