我已经为单击按钮"KFI文档"编写了driver.findElement(By.id("kfiDocumentLink")).click();
代码。
请查找HTML代码。
<a class="button" id="kfiDocumentLink" href="/Quote/KFIDocument/The%20Co-operative%20Bank%20-%20Download%20Mortgage%20Illustration%20(PDF)%20160808104103" target="_blank">Download Mortgage Illustration (PDF)</a>
当我运行代码时,有时我可以点击按钮,有时我无法点击按钮。
有人能帮忙吗?
实际上,有时当你去寻找元素时,由于互联网速度慢或其他原因,它不会出现在DOM
上,这就是为什么有时可以点击,有时不能点击。
为了克服这个问题,您应该尝试将WebDriverWait
与ExpectedConditions.elementToBeClickable
一起使用,在单击元素之前等待,直到元素在DOM
上可见并可单击,如下所示:-
WebDriverWait wait = new WebDriverWait(driver, 10);
el = wait.until(ExpectedConditions.elementToBeClickable(By.id("kfiDocumentLink")));
el.click();