在我的应用程序中,我处理的是一个窗口,当我们点击一个特定的web元素时,用java的selenium WebDriver来关闭它。 在这里,我可以点击窗口,窗口正在关闭,但下一行代码没有执行,没有错误或异常,它只是无限期地等待。任何人都可以找到我同样的解决方案?处理子窗口点击特定的webelement时关闭
回答
,使得收盘低于代码窗口写入后: 首先尝试这种
driver.switchTo().defaultContent();
如果上面的代码不工作,然后尝试下面的代码。
driver.switchTo().activeElement()
Hi @Hana:很抱歉听到它。似乎由于某些未知原因点击后,驱动程序仍在等待Click()的响应。所以我会建议不要使用元素的Click()方法。使用javascript来点击它。尝试以下代码: WebElement closeBtn = webDriver.findElement(btn_locator); JavascriptExecutor executor =(JavascriptExecutor)webDriver; executor.executeScript(“arguments [0] .click();”,closeBtn); 如果您已经切换到新窗口,请切换回主窗口。 – Shailendra
似乎点击了butoon和关闭窗口后,由于某些未知原因,驱动程序仍在等待Click()的响应。所以我会建议不要使用元素的Click()方法。使用javascript来点击它。
试试下面的代码:
driver.manage().timeouts().setScriptTimeout(20, TimeUnit.SECONDS);
WebElement closeBtn= webDriver.findElement(btn_locator);
JavascriptExecutor executor = (JavascriptExecutor) webDriver;
executor.executeScript("arguments[0].click();", closeBtn);
如果 “executor.executeScript” 不工作,然后尝试 “executor.executeAsyncScript”:
executor.executeAsyncScript("arguments[0].click();", closeBtn);
如果你有已将任何切换到新窗口,然后切换回主窗口
谢谢shailendra,但它不适合我,这里也是点击()后等待。 – Hana
再做一次尝试。关闭窗口后,获取窗口句柄,切换到窗口,然后尝试与其交互。 – Shailendra
您面临的问题可能有2-3个原因:1)执行Click()操作后,驱动程序仍在等待控制权。在这种情况下,JavaScript代码应该可以帮到你。 2)单击()后,您没有正确切换窗口。 3)执行click()操作后,应用程序正在挂起。 – Shailendra
- 1. 父窗口用户注销时关闭特定的子窗口
- 2. 处理JFileChooser窗口关闭?
- 3. 子窗口关闭时通知窗口
- 4. 在javascript中关闭父窗口时如何关闭子窗口?
- 5. 当父窗口在Jquery中关闭时关闭子窗口
- 6. 父窗口关闭时关闭所有子窗口
- 7. 当父窗口关闭时自动关闭子窗口
- 8. 悬停时关闭模式窗口,关闭焦点时关闭
- 9. SDL_PeepEvents不会处理窗口关闭
- 10. 在Java中处理和关闭窗口
- 11. 如何检测从右键点击窗口关闭 - >关闭窗口?
- 12. Extjs。点击不在窗口关闭弹出窗口
- 13. 窗口事件处理请点击
- 14. 无关闭窗口的关闭窗口
- 15. 当关闭时,WPF窗口路径点击到后面的窗口!
- 16. monomac - 如何在单击主窗口中的按钮时关闭子窗口
- 17. WPF关闭子关闭父窗口
- 18. 使用子窗口关闭父窗口。
- 19. 从父窗口关闭子窗口
- 20. 从子窗口关闭父窗口
- 21. 关闭子窗口刷新父窗口
- 22. WPF - 处理窗口关闭所有者窗口
- 23. 如何在WPF/MVVM右上角的关闭图标时处理关闭窗口?
- 24. 如果用户点击关闭('X')按钮,如何处理PowerShell窗口的关闭事件
- 25. 如何防止父窗口关闭之前关闭子窗口
- 26. 如何关闭父窗口关闭子窗口?
- 27. 从ViewModel关闭子窗口
- 28. PYQT5 Mdi子窗口关闭
- 29. 关闭JavaScript子窗口
- 30. 当点击外部时,CMFCColorButton弹出窗口不关闭
为什么不在这之后切换到原始窗口? –
你准确的步骤是什么?什么对你有用?显示代码。你卡在哪里? – DebanjanB
@Gaurang但在这种情况下,我甚至无法在子窗口中单击该元素后键入打印语句,该窗口在该点击时关闭。 – Hana