我正在研究以下情况。
我单击主网页中的元素,然后打开一个对话框。它是一个iframe,我使用diver.switchTo().frame(1);
来访问该帧。我能够在该帧中执行所需的活动。单击该框架中的“确定”按钮将关闭它。框架关闭后,我无法访问主页面中的任何元素。我使用以下内容切换回主页面
driver.switchTo().defaultContent()
和driver.switchTo().frame(0)
。但是他们都没有让我回到主页。
由于帧被关闭,我也试过没有任何switchTo()语句。但它也没有用。
请帮助我解决其他可能的解决方案。提前谢谢!
答案 0 :(得分:2)
您需要切换回原始窗口(Java代码)
String windowHandle = driver.getWindowHandle(); // save the original window handle
// handle the pop up
driver.switchTo().window(windowHandle);
答案 1 :(得分:0)
当您尝试切换回顶级浏览环境时,您的以下代码试用应该有效:
driver.switchTo().defaultContent();
作为替代方案,您也可以尝试:
driver.switchTo().parentFrame();
有时可能会发生驱动程序失去窗口焦点,在这种情况下,您必须通过以下方式重新关注浏览器:
((JavascriptExecutor) driver).executeScript("window.focus();");