关闭窗口后页面无法点击

Posted

技术标签:

【中文标题】关闭窗口后页面无法点击【英文标题】:Page is unclickable after closing a window 【发布时间】:2021-07-18 07:44:12 【问题描述】:

我在 selenium 中的流程如下:

    访问网页 点击标签 单击将打开窗口的选项卡中的添加按钮 关闭那个窗口 再次点击同一个标签

我能够毫无问题地完成步骤 1 到 4,但是在步骤 5 中我无法单击选项卡元素,因为我知道我在步骤 2 中单击了同一个选项卡,我确实从控制台进行了检查,并且相同我在第 2 步中使用的 xpath 没有返回任何元素,但是当我单击该元素以在控制台中检查它时,它开始在控制台中返回一些值,但当我继续运行时(在调试中)仍然无法从 selenium 工作 我的页面位于 iframe 中,在第 4 步之后我能够成功访问并打印页面标题,但我的问题仍然存在,为什么在关闭窗口并刷新屏幕后我无法从 selenium 中单击该选项卡,为什么元素不再响应? 在做了一些研究后,我还尝试了以下脚本:

WebElement element=driver.findElement(By.xpath(the_path));
javascriptExecutor  ex=(JavascriptExecutor)driver;
ex.executeScript("arguments[0].click()", element);

但它会在第一行失败,因为该元素没有找到,尝试在代码的早期初始化它,但它会在第 3 行失败。 我该如何解决这个问题?

【问题讨论】:

在第4步关闭窗口后,是不是又切换回主窗口了? 【参考方案1】:

尝试使用 Selenium 代码点击元素,而不是通过将 JavaScript 注入页面。这应该可以解决您的问题。

WebElement element = driver.findElement(By.xpath(the_path));
element.click();

【讨论】:

【参考方案2】:

问题是由于主页中有多个 iframe,因此在关闭切换窗口时,我没有被重定向到正确的 iframe,我在单击选项卡时处于第 3 步。

【讨论】:

以上是关于关闭窗口后页面无法点击的主要内容,如果未能解决你的问题,请参考以下文章