我无法将chrome webdriver中的鼠标指针移动到nodejs中的所需位置。我正在使用-selenium webdriver 4.0.0-alpha.1
。
这就是我构建驱动程序的方式
const {Builder,By} = require("selenium-webdriver");
let driver = new Builder().forBrowser('chrome').build();
这是我定义将鼠标移动到名为value = { x: 262, y: 315 }
的位置的逻辑
await driver.wait(until.elementLocated(By.className("OUeyt")));
let a = driver.findElement(By.className("_3Bxar"));
let actions = driver.actions({bridge: true});
await actions.mouseMove(a, value).click().perform();
每当我运行此部分时,它都说mousemove()
不是函数。我已经尝试了文档说的无济于事。在stackoverflow上,存在解决方案,但Java和i必须使用JavaScript来解决。我该怎么做才能执行此功能?
答案 0 :(得分:1)
driver.action().mouseMove()
在 v4.0.0-alpha1 中已弃用。查看此链接:https://seleniumhq.github.io/selenium/docs/api/javascript/module/selenium-webdriver/lib/input_exports_Actions.html
答案 1 :(得分:0)
mouseMove()已针对chrome进行了描述。如果仍要使用它,则可以还原到3.6.0版。
作为替代方案,您可以使用execute / executeScript或直接使用