2016-08-10 74 views
0

我需要處理的並不是很好的HTML結構,我需要選擇的元素列表在iframe中。問題是我只對同一級別的其他div中的2種div感興趣。如何使用jQuery在iframe中指定多個選擇器?

我能夠從IFRAME選擇這種類型,但只有一個在時間:

$("#someIframe").contents().find(".class a img[src*='type1']") 

但我無法同時選擇:

$("#someIframe").contents().find(".class a img[src*='type1'], .class a img[src*='type2']") -> does not work 

的問題是,我需要選擇第一個,但我不知道哪一個是第一個:)類似於:

$("#someIframe").contents().find(".class a img[src*='type1'], .class a img[src*='type2']").first() 

UPDATE 1:

我找到了另一種方法。我注意到,我不想選擇這些元素包含特定文本:

<div>not listed</div> 

然而,再次找到了正確的選擇,因爲我需要低於此相反會有問題:)

$("#someIframe").contents().find(".someclass div:contains('not listed')").first() 
+0

沒有錯所示的方法,假設兩在代碼運行時存在選擇器 – charlietfl

+0

是的,有多個元素在代碼運行時滿足兩個選擇器。這很奇怪,但也許我可以解決它 - >原來的帖子 – JanH

+0

在腳本中給它一些邏輯! –

回答

0

我已經想通了。下面是代碼,如果有人需要它的未來:

$("#someIframe").contents().find(".someclass").not($("#someIframe").contents().find(".someclass div:contains('not listed')").parent()).first() 

這不是很好,但標記本身是不是很好,所以我想它的罰款:)