java获取单击内容,java – 单击菜单链接时,获取元素不是可点击的异常
我想點擊菜單鏈接但沒有運氣.它總是顯示異常 –
Exception in thread “main” org.openqa.selenium.WebDriverException:
unknown error: Element is not clickable at point (64, 64). Other
element would receive the click: <
div style=”position: absolute; left:
0px; top: 0px; width: 100%; height: 100%; z-index: 30;
background-color: rgb(221, 221, 221); opacity: 0.4;”>
我有以下html片段
Home
這是它看起來像的快照 –
我正在使用以下代碼來實現相同的目標 –
WebElement element = driver.findElement(By.xpath(".//*[@id='foid:1']/span[1]/span/span[4]"));
WebDriverWait wait = new WebDriverWait(driver, 120);
wait.until(ExpectedConditions.elementToBeClickable(element));
//driver.findElement(By.xpath("//span[contains(text(), 'Home')]")).click();
driver.findElement(By.xpath(".//*[@id='foid:1']/span[1]/span/span[4]")).click();
我檢查了< div>接受點擊的DOM中的標簽.但我看到了這一點
有一個額外的屬性,即display:none;
使用以下配置:
> Selenium 3.0.1
>司機-ChromeDriver
我不知道要處理這種情況.
解決方法:
嘗試等到獲得點擊的元素消失:
new WebDriverWait(driver, 10).until(ExpectedConditions.invisibilityOfElementLocated(By.xpath('//div[@style="position: absolute; left: 0px; top: 0px; width: 100%; height: 100%; z-index: 30; background-color: rgb(221, 221, 221); opacity: 0.4;"]')));
由于這個答案被低估了,我添加了一些細節來解釋為什么它可以成為可接受的解決方案.
這是chromedriver的一個已知問題(我個人已經面對過幾次):chromedriver有時會忽略模態窗口,例如“正在加載頁面”
并且“認為”目標元素(由模態窗口覆蓋)實際上可見且可點擊并嘗試進行模態窗口接收的點擊.
所以等到模態窗口消失是有意義的.
標簽:java,selenium,selenium-webdriver
來源: https://codeday.me/bug/20190823/1701752.html
總結
以上是生活随笔為你收集整理的java获取单击内容,java – 单击菜单链接时,获取元素不是可点击的异常的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TensorFlow 笔记2--MNIS
- 下一篇: TensorFlow 笔记3--模型的保