java - 使用Selenium查找网页上所有 "hoverable"元素

标签 java javascript selenium selenium-webdriver

有没有办法使用 Selenium 来查找所有鼠标悬停在页面上时会以某种方式改变页面的元素? (例如触发下拉菜单、工具提示文本或只是简单地更改链接颜色)

我能想到的唯一方法是在页面加载后立即获取基线屏幕截图,然后循环浏览页面上的每个元素,将鼠标悬停在其上,并获取另一个屏幕截图以与基线进行比较。

编辑:您基本上正在寻找具有 :hover CSS 属性或 onMouseOver javascript 事件的所有元素,但由于该信息通常在 HTML 中不可用,因此我不确定 XPath 是否可以提供帮助。

最佳答案

我在问自己the same question我得出的结论(因为我不太了解 Web 开发)是我最好的选择是修改 Visual Event 2 以从网页获取所有 Javascript 事件。这确实有效,但我没有得到任何其他答案,所以我认为这是唯一的方法。如果您希望我分享我的代码,请告诉我,因为找到应该修改 Visual Event 2 的位置以便您可以访问其事件对象是一件很棘手的事情。

关于java - 使用Selenium查找网页上所有 "hoverable"元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17077662/

相关文章:

javascript - 通过 Azure 服务总线的 SignalR

jquery - 选择一个由带有 Selenium 的 div 元素覆盖的单选按钮

java - 在 QueryDSL 分组转换器中计数

java - MySql 不适用于已部署的 Java Web 应用程序

Java,设计模式:Manager for Use cases and Actors

c# - 反转这个功能

javascript - 使用 JavaScript 为提交按钮添加自动 ID 添加帖子

java - 我们如何在java中使用Akka-remote-access进行2路通信

java - Selenium - 如何在页面中以多种形式查找相同的元素

python - 使用 Robot Framework 从 Python 中的方法返回值