收到此错误:“元素在该点不可点击”
我们可以得到错误-元素在使用Seleniumwebdriver时无法点击。这通常发生在chromedriver中,因为Chrome浏览器利用点位置来识别元素。
当一个元素的位置是动态的并且我们想要点击那个元素时,就会抛出这个错误。这个错误的原因是如果一个元素在DOM中可用,但它的位置在前端是动态的。
下面列出了解决此问题的一些方法-
显式等待的使用。我们可以使用等待预期条件-visibilityOf。webdriver应等待DOM中可用的元素可见。
显式等待的使用。我们可以使用等待预期条件-visibilityOfElementLocated。webdriver应等待元素在DOM中可用并可见。
最大化浏览器大小。
语法
driver.manage().window().maximize();
动作动作的使用。
语法
WebElement m = driver.findElement(By.id("txt-loc"));
Actions a = new Actions(driver);
a.moveToElement(m).click().perform();JavaScriptExecutor的使用。
获取x轴位置的语法-
WebElement m = driver.findElement(By.id("txt"));
JavascriptExecutor j =(JavascriptExecutor)driver;
j.executeScript(
"window.scrollTo(0,"m.getLocation().x+")");
m.click();获取y轴位置的语法-
WebElement n = driver.findElement(By.id("txt"));
JavascriptExecutor j =(JavascriptExecutor)driver;
j.executeScript(
"window.scrollTo(0,"n.getLocation().y+")");
m.click();热门推荐
10 暖男祝福语简短精辟
11 送入大学祝福语简短精辟
12 退休祝福语 幽默简短精辟
13 祥林嫂祝福语简短
14 孩子甜蜜祝福语大全简短
15 母猪生小孩祝福语简短
16 同孕祝福语简短独特
17 生日祝福语简短蓝颜
18 小孩生日祝福语简短老师