元素不可点击Selenium webdriver

我有下面的代码,我不知道如何点击一个元素,而没有得到"Element is not clickable at point"错误消息。

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

 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) 

希望它会工作.. 🙂

你正试图click “buttonsearchbutton”,确保没有元素重叠在你的click元素上。
检查“pax 2”的search结果是否与click元素重叠。
如果是这样,那么click一些其他元素,因为search没有重叠,并确保click不作任何改变,因为你不需要的页面。 (尝试通过点击一些标签元素)
然后尝试click你想要的元素。