java - 在 selenium 中,我可以在鼠标悬停操作后执行 getCSSValue("color")
问题描述
有一种情况,我将鼠标悬停在元素上,然后开始显示一条垂直线,并且我想getCSSValue
在悬停后显示该元素。
通常不直接通过使用悬停xpath.getCSSValue("color");
给我颜色,但我想要的是首先悬停在该元素上,然后它将开始显示红色垂直线,然后获取颜色值。
我知道/尝试过getCSSValue("color")
动作类方法,但动作类不允许这样做。
public By hoverOnAccount = By.xpath("myxpath");
WebElement abcd = driver.findElement(hoverOnAccount);
String abc = abcd.getCssValue("color");
任何人都可以建议吗?
解决方案
这应该可以,还请添加您尝试过的操作方法。
WebElement hoverElement = driver.findElement(yourElementSelector);
Actions action = new Actions(driver);
action.moveToElement(hoverElement).build().perform();
hoverElement.getCSSValue("color");
如果那个不起作用,您可以尝试使用以下操作JavaScript Executor
:
String javaScript = "var evObj = document.createEvent('MouseEvents');" +
"evObj.initMouseEvent(\"mouseover\",true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);" +
"arguments[0].dispatchEvent(evObj);";
((JavascriptExecutor)driver).executeScript(javaScript, hoverElement);
推荐阅读
- r - 我无法在 r 中打开“汽车”库
- c - sscanf 是否需要以空字符结尾的字符串作为输入?
- linux-kernel - 在设备树中的节点之间共享变量
- javascript - JavaScript - 只有在满足特定条件时,您才能将类添加到 Input 元素?
- opengl - 从 CPU 更新通过 glBindBufferRange 绑定的缓冲区是否合法?
- python-3.x - 如何使用 Python 解析 CDATA 中的 html?
- installation - 无法在 Homebrew 中安装 emacs
- c# - 使用匹配的文本框和列值过滤表
- python - 按唯一值计算连续的 NaN 值
- docker - 基本 Nginx 容器(静态文件)