2012-10-12 41 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

创建一个新问题。 –