2011-09-08 46 views
4

我不知道如何在下例中選擇第一個跨度。jQuery - 選擇具有特定樣式的子節點

<div class="sp"> 
    <span style="visibility:hidden">abc</span> 
    <span>xyz</span> 
</div> 

我試過使用這個,沒有工作。

$('div.sp span[visibility=hidden]') // not work 

謝謝!

回答

2

在你的選擇,你沒有提到的屬性名稱(style),也引號缺少包裝完整的選擇。試試這個

$("div.sp span[style='visibility:hidden']"); 

如果你想找到一個隱藏的範圍,那麼我會建議你使用這個,因爲屬性選擇器將嘗試匹配visibility:hidden,因爲它是。如果這個值之間有任何空格,那麼它將失敗。 :hidden選擇器查找不是visibledisplay的元素是none

$("div.sp span:hidden") 
+0

[:隱藏選擇( http://api.jquery.com/hidden-selector/)將不會選擇「visibility:hidden」,具有可見性:hidden或opacity:0的元素被視爲可見,因爲它們仍然佔用佈局中的空間。 – nandin

0

獲取第一跨度

$('div.sp span:first'); 

如果你想獲得與可視性第一跨度:隱藏,是另一件事:

$('.sp span[style="visibility:hidden"]:first'); 
相關問題