当我尝试执行以下代码时,它给我例外情况: - org.openqa.selenium.ElementNotVisibleException: element not visible
WebElement elem = newDriver.findElement(By.name("loginId"));
elem.get(0).clear();
elem.get(0).sendKeys("asd");
即使元素存在。
有关详细信息,请参阅下图。
我正在尝试访问帐户标签下面的输入框,但是因为元素不可见而给我异常。
我已使用 Actions
标记和 JavascriptExecutor
任何建议。
答案 0 :(得分:1)
感兴趣的元素位于iframe中:
所以,之前,你必须切换到iframe:
WebElement iframe= driver.findElement(By.id("alibaba-login-box"));
driver.switchTo().frame(iframe);
如果你想“走出”iframe:
driver.switchTo().defaultContent();
整个代码:
WebElement iframe= driver.findElement(By.id("alibaba-login-box"));
driver.switchTo().frame(iframe);
WebElement elem = driver.findElement(By.id("fm-login-id"));
elem.clear();
elem.sendKeys("asd");
//when you want to return to the defaultContent
driver.switchTo().defaultContent();