RemoteWebDriver.FindElementsByCssSelector如何在iframe中找到iframe?

时间:2016-12-20 13:40:43

标签: selenium selenium-webdriver selenium-chromedriver

我正在使用像

这样的FindElementsByCssSelector方法
var iframes = RemoteWebDriver.FindElementsByCssSelector("iframe");

这给了我两个iframe。

如果我写

$('iframe');

在浏览器开发控制台中,它只显示一个。

在DOM中,一个iframe在另一个内部,如:

iframe
  html
   body
    form
     div
      table
       tbody
        tr
         td
          iframe

1 个答案:

答案 0 :(得分:1)

找到第一帧并使用它找到另一个

IWebElement firstIframe = RemoteWebDriver.FindElementByCssSelector("iframe");
RemoteWebDriver.SwitchTo().Frame(firstIframe);
IWebElement secondIframe = iframe.FindElementByCssSelector("iframe");
RemoteWebDriver.SwitchTo().Frame(secondIframe);