本人在学习selenium2java的时候,遇到元素存在但因为被其他元素挡住了,导致无法点击的问题,多放请教后,使用js点击解决了困扰。我又写了几个js点击元素的方法,现在分享出来,供大家参考。
//通过js点击
public static void clickByJs(WebDriver driver, WebElement element) {
JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("arguments[0].click();", element);
//第二种点击方法
// ((JavascriptExecutor) driver).executeScript("arguments[0].click()", question);
}
下面这个方法在发散一下,直接用传入xpath参数。
//通过xpath获取元素用js点击
public static void clickByjsByxpath(WebDriver driver, String xpath) {
clickByJs(driver, driver.findElement(By.xpath(xpath)));
}