使用Java中的Selenium 2在网页元素上悬停鼠标

12

我知道jQuery是一种替代方案。但我正在寻找Selenium 2的解决方案。 - Alp
这应该能解答你的问题:https://dev59.com/u2025IYBdhLWcg3wEhnr - Suchit Parikh
1个回答

25

这将会帮助你:

WebElement elems=driver.findElement(By.linkText("Custom Development"));//Menu Item
WebElement elems1=driver.findElement(By.xpath("//li[@id='item-465']/a"));//Menu
Actions builder = new Actions(driver); 
Actions hoverOverRegistrar = builder.moveToElement(elems1);
hoverOverRegistrar.perform();
elems.click();//at last Menu Item Click

1
很想知道如何在锚点元素不可见的情况下进行操作,因为它是一个JavaScript点击器... - djangofan
@djangofan,请问您是否尝试过使用LinkText? - user891193
我总是忘记对于链接文本,存在By定位器。虽然我会尝试,但由于该链接在点击之前并不存在,所以不确定它是否有效。 - djangofan
@djangofan 好的,那么可以更多地了解一下你的网站开发情况。有时候所有元素的ID都相同,因此需要寻找稳定的标识符。 - user891193
2
@pradeek 感谢您的回答,这很有效。我注意到实际的 hover 部分可以在一行中完成: new Actions(driver).moveToElement(elems1).perform(); - Marquee
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接