2012-10-12 78 views
6

這裏有一個研究案例:的Watir找不到元素我在Chrome的DOM Inspector看到

<html> 
... 
<embed name="foo"> 
<embed name="bar"> 
... 
</html> 

我想引用使用的Watir Ruby的API名爲「酒吧」 embed元素。該單元由Chrome瀏覽器的DOM Inspector顯示,但它使用任何的Watir的發現方法我找不到:

browser.embeds() # only <embed name="foo"> is found 
browser.html.include? 'bar' # => false 

爲什麼會發生呢?爲什麼Watir不顯示完整的HTML?如果我有不同框架中的元素或通過Javascript初始化函數動態插入元素,是否可以使用Watir訪問它們?

感謝

+0

難道這些標籤正確關閉? – tadman

回答

3

如果該元素是在框架中,你必須使用這樣的事情:

browser.frame(:id => "frameid").embed(:name => "bar") 
+0

謝謝! 現在我正在尋找遍歷所有iFrames的最佳方式,因爲我不知道包含嵌入元素的幀的確切位置。 – Juliano

+0

創建一個新問題。 –