javascript - 元素在 Selenium webdriver 点不可点击

标签 javascript node.js selenium selenium-webdriver click

我有以下代码,但我无法弄清楚如何在不收到 “元素在该点不可点击” 错误消息的情况下单击元素。

您还可以看到我在单击元素之前移动到该元素。以下代码示例应该完全可以工作。

var webdriver = require('selenium-webdriver')
    , By = webdriver.By
    , until = webdriver.until;
var driver = new webdriver.Builder().forBrowser('firefox').build();
driver.get('http://www.vapeworld.com/');
driver.manage().timeouts().implicitlyWait(10, 3000);
for (i = 0; i < 5; i++) {
    try {
        driver.executeScript("try{jQuery('[name=\"" + i.toString() + "_name\"]')[1].click()}catch(Ex){};");
    }
    catch (Ex) {}
}
driver.findElement(webdriver.By.id('search')).sendKeys('pax 2'); //to enter text
driver.findElement(webdriver.By.className('button search-button')).click();
driver.findElement(webdriver.By.id('product-collection-image-2270')).then(function (element) {
    driver.actions().mouseMove(element).perform();
    driver.sleep(5000);
    driver.actions().click(element).perform();        
});
driver.quit();

最佳答案

您应该尝试使用 .executeScript() 执行点击,如下所示:-

只需更改此行:

driver.actions().click(element).perform();

对此:

driver.executeScript("arguments[0].click()", element)

希望它能起作用......:)

关于javascript - 元素在 Selenium webdriver 点不可点击,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38258549/

相关文章:

java - 使用 GeckoDriver 和 Firefox 执行代码时 org.openqa.selenium.firefox.NotConnectedException : Unable to connect to host 127. 0.0.1

python find_element_by_css_selector(value) 返回 None

javascript - 显示侧边栏时,导航栏中有两种背景颜色

sql - 如何为 Sequelize 转换 SQL 查询?

javascript - NodeJS promise 不重置

node.js - 无法通过 IP 或名称通过网络访问计算机

r - 使用 RSelenium 在 R 中抓取 Javascript

JavaScript - Map() 增量值

javascript - dom节点中 'isConnected'字段的可靠性

javascript - 动态导入所有子文件夹导出