ホームページ >Java >&#&チュートリアル >Selenium でオーバーレイによって隠された要素をクリックするにはどうすればよいですか?
Selenium でオーバーレイによって隠された要素をクリックする
Selenium ベースのオートメーションでは、オーバーレイによって隠されている要素をクリックすることが一般的な課題になることがあります。エラー メッセージ「要素 MyElement は点 (x, y) ではクリックできません...他の要素がクリックを受け取ります」は、この状況を示しています。
問題への対処
この問題を解決するには、次のアプローチを検討してください:
WebElement element = driver.findElement(By.id("id1")); Actions actions = new Actions(driver); actions.moveToElement(element).click().build().perform();
JavascriptExecutor jse1 = (JavascriptExecutor)driver; jse1.executeScript("scroll(250, 0)"); // if the element is on top. jse1.executeScript("scroll(0, 250)"); // if the element is at bottom.
ページの更新:
要素をクリック可能になる前にページが更新される場合、待機が発生します:
Thread.sleep(500); // replace 500 with an appropriate timeout in milliseconds
WebDriverWait wait2 = new WebDriverWait(driver, 10); wait2.until(ExpectedConditions.elementToBeClickable(By.id("id1")));
WebDriverWait wait3 = new WebDriverWait(driver, 10); wait3.until(ExpectedConditions.invisibilityOfElementLocated(By.xpath("ele_to_inv")));
以上がSelenium でオーバーレイによって隠された要素をクリックするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。