【问题标题】:Watir - get back to root frameWatir - 回到根框架
【发布时间】:2016-06-08 12:17:51
【问题描述】:

我的脚本首先访问一个url:-

browser = Watir::Browser.new :firefox
browser.goto('http://anything.com')

然后它创建 iframe

browser.execute_script("$(#some-div).html('<iframe id="my_iframe" src='http://google.de'></iframe>')")

现在我想获取 iframe 中的内容。所以我打电话:

browser.iframe(id: 'my_iframe').html

接下来我要执行另一个脚本

browser.execute_script("$(#some-div).html('<iframe id="my_iframe" src='http://new_url.de'></iframe>')

但它指向 iframe 上下文,而不是顶部窗口(但浏览器本身仍指向anything.com)

我收不到browser.iframe(id: 'my_iframe')

如何将 watir 指向顶层 html 文档?

【问题讨论】:

    标签: html ruby iframe selenium-webdriver watir


    【解决方案1】:

    Watir 在您与元素交互时为您处理帧切换,而不是在您使用 execute_script 时,因此您必须对元素或浏览器执行操作才能切换回顶级浏览上下文。在您的 execute_script 调用之间使用它。

    browser.exists?
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多