watir frames元素交互方式

watir frames元素交互方式

 

frame:

<frameset cols="*,*">
  <frame src="menu.htm" name="menu">
  <frame src="main.htm" name="main">
</frameset>

1.判断页面是否有frame元素
 
ie.show_frames
2.获取frame
 
3.IE访问iframe元素出错解决方案
由于IE的安全限制了跨域访问,所以访问frame的url时会被IE阻止,可以通过以下方式解决:
1)直接访问iframe的url
 ie.goto(http://www.thenewsite.com/framecontents.html).
2)通过IE选项>安全>受信任的站点>站点,将网站添加到区域中,去掉 "对该区域中的所有站点要求服务器验证"
3)在HOSTS文件中添加站点,文件位置:c:\windows\system32\drivers\etc
192.168.10.32 foosystem 4)将url中的ip192.168.10.32用host名替代;将IE浏览器安全级别设置最低
5)如果以上方法都不奏效,仍有错误信息一直干扰,可以将错误信息关闭(watir1.4):
ie.logger.level = Logger::ERROR
  
ie.frame(:name, "menu")
3.frame内元素的交互
设menu的frame里面有元素
  
Iframe: 
browser.frame(:index, 1).locate browser.div(:id, "somebutton").fire_event("onmousedown") browser.frame(:index, 1).locate browser.div(:id, "somebutton").fire_event("onmouseup")  
注:由于交互后页面内容会重新返回到根页面,所以需要不断的执行locate与iframe内部元素交互。
 
<a href="index.htm">Click Menu Item</a> 
交互方式: 
ie.frame(:name, "menu").link(:text, "Click Menu Item").click 
  
4.嵌套frame交互
 
ie.frame(:name, "frame").frame(:name, "nested_frame")

你可能感兴趣的:(C++,c,windows,浏览器,IE)