Javascript MoveTargetOutOfBoundsException Selenium IE9/FireFox
我在使用selenium的FireFox/IE9驱动程序时遇到了一个问题。当我使用selenium的Actions类并使用它的方法moveToElement时,它不会移动到元素,它会返回MoveTargetAutofBoundsException。我曾尝试使用其他解决方案,如使用坐标、点和javascriptexecutor,但它们都不起作用。通过使用moveToElement,它可以在我的chrome驱动程序上运行,所以我不知道为什么它不能在firefox33/IE9上运行,因为它们是selenium自带的 以下是我的代码片段:Javascript MoveTargetOutOfBoundsException Selenium IE9/FireFox,javascript,css,internet-explorer,firefox,selenium,Javascript,Css,Internet Explorer,Firefox,Selenium,我在使用selenium的FireFox/IE9驱动程序时遇到了一个问题。当我使用selenium的Actions类并使用它的方法moveToElement时,它不会移动到元素,它会返回MoveTargetAutofBoundsException。我曾尝试使用其他解决方案,如使用坐标、点和javascriptexecutor,但它们都不起作用。通过使用moveToElement,它可以在我的chrome驱动程序上运行,所以我不知道为什么它不能在firefox33/IE9上运行,因为它们是sele
WebElement requiredCheckbox = new WebDriverWait(driver,15).until(ExpectedConditions.presenceOfElementLocated(By.name("tc_n_cs_subscribe_1")));
// Point points = requiredCheckbox.getLocation();
// System.out.println(points.getX());
// System.out.println(points.getY());
// actions.moveByOffset(points.getX(), points.getY()).perform();
// ((JavascriptExecutor)
// driver).executeScript("window.scrollBy(0, "+points.getY()+");");
// ((JavascriptExecutor) driver).executeScript(
// "arguments[0].scrollIntoView();", requiredCheckbox);
// Coordinates coordinate =
// ((Locatable)requiredCheckbox).getCoordinates();
// coordinate.onPage();
// coordinate.inViewPort();
actions.moveToElement(requiredCheckbox).build().perform();
requiredCheckbox.click();
你想干什么?如果要将视图滚动到Required复选框,请尝试
((Locatable) requiredCheckbox).getCoordinates().inViewPort();
我已经解决了这个问题。我使用了javascriptexecutor代码
((JavascriptExecutor) driver).executeScript(
"arguments[0].scrollIntoView();", requiredCheckbox);
在我添加DesiredCapabilities setJavascriptEnabled方法之后,它就工作了