2016-12-02 69 views
3

长期和短期的,这是当我尝试使用硒:元素不能点击...其他的元素将获得点击,点击反正

return this.driver.findElement(By.css("div[class*='img']")).click(); 

我得到一个错误Uncaught WebDriverError: unknown error: Element is not clickable at point (525, 889). Other element would receive the click:...

我怎么可以点击反正并让“其他元素”收到点击?我正在使用webdriverjs。

这背后的推理基本上是我测试的网站做了一些奇特的反应,它以某种方式遮蔽了链接。基本上不用附加链接到图像,整个图像覆盖了一个透明的盒子,它可以将你链接到某个地方(不要问我为什么)。当你点击图片时,你并不是实际上是点击图片,但从用户的角度来看它们是一样的。

当我使用webdriverIO我可以说

browser.moveToObject("img"); browser.leftClick();

,但我们正在从远。我也试过

this.driver.findElement(By.css("div[class*='img']")); 
    return this.driver.actions().click().perform(); 

但它似乎没有做任何事情。

关于这个错误已经有很多问题了,但是我还没有看到任何让你点击的问题。

+0

我看你找到了答案,这就是我会也建议。我真的很惊讶'行为()'不起作用。在我重读您的问题并看到您已经尝试过之前,这将是我的第二个建议。 – JeffC

+0

是的,它是一个奇怪的,它没有抛出一个错误,它似乎并没有做任何事情 – Sarah

回答

4

在寻找了几个小时的答案,发帖提问,紧接着又找到答案的一个经典案例,我发现周围的工作:

var mylink = this.driver.findElement(By.css("div[class*='img']")); 
return this.driver.executeScript("arguments[0].click();", mylink);