gpt4 book ai didi

java - 将鼠标悬停在动画菜单上并单击 selenium 中的菜单项

转载 作者:行者123 更新时间:2023-11-30 02:55:19 25 4
gpt4 key购买 nike

我试图将鼠标悬停在动画菜单上并选择菜单中的一个项目。我尝试先通过xpath在菜单上执行悬停,然后通过xpath执行单击菜单项,如下所示。

WebElement ch = driver.findElement(By.xpath(".//*[@id='menu-item-24463']/a"));
builder.moveToElement(ch).perform();
WebElement ch1 = driver.findElement(By.xpath(".//*[@id='menu-item-24463']/div/ul/li[1]/a"));
ch1.click();

我遇到异常

org.openqa.selenium.interactions.MoveTargetOutOfBoundsException:元素内的偏移量无法滚动到 View 中

我还尝试将以下操作链接起来

builder.moveToElement(ch).moveToElement(driver.findElement(By.xpath(".//*[@id='menu-item-24463']/div/ul/li[1]/a"))).click().build().perform();

它也会抛出相同的异常。

有什么想法可以实现动画菜单项中的点击吗?

最佳答案

查找并存储网页元素

WebElement ch = driver.findElement(By.xpath(".//*[@id='menu-item-24463']/a"));
WebElement ch1 = driver.findElement(By.xpath(".//*[@id='menu-item-24463']/div/ul/li[1]/a"));
Actions builder = new Actions(driver);

执行悬停

builder.moveToElement(ch).perform();

等待元素出现在 View 中并执行单击

WebDriverWait wait = new WebDriverWait(driver,10);
wait.until(ExpectedConditions.visibilityOf(ch1));
ch1.click();

关于java - 将鼠标悬停在动画菜单上并单击 selenium 中的菜单项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37387165/

25 4 0