15

我想向下滚动我的网页并使用此代码滚动页面,但它不起作用

public ViewBasketSentToMePageObject viewSlideShare() throws InterruptedException {

    Thread.sleep(500l);

    Actions action1 =new Actions(getDriver());
    action1.keyDown(Keys.CONTROL).sendKeys(String.valueOf('\u0030')).build().perform();

    List<WebElement> function = getDriver().findElements(By.xpath("//a [@ng-click='onItemClick()']"));
    function.get(13).findElement(By.xpath("//img [@ng-src='resources/images/slideshare-icon-small.png']")).click();

    return getFactory().create(ViewBasketSentToMePageObject.class);
}

寻求帮助

4

4 回答 4

24

尝试使用下面的简单 java 脚本,您可以滚动页面。

JavascriptExecutor jsx = (JavascriptExecutor)driver;
jsx.executeScript("window.scrollBy(0,450)", "");
于 2013-04-22T06:07:07.720 回答
6

向下滚动:

WebDriver driver = new FirefoxDriver();
JavascriptExecutor jse = (JavascriptExecutor)driver;
jse.executeScript("scroll(0, 250);");

或者,您可以执行以下操作:

jse.executeScript("window.scrollBy(0,250)", "");
于 2015-07-01T08:21:31.953 回答
1

滚动直到找到WebElement

尝试这个:

((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView(true);", your_WebElement);
于 2017-07-13T10:49:11.083 回答
0
WebElement element = driver.findElement(By.xpath("//input [@id='giveid']"));

((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView();", element);

用这个。这将帮助您在特定元素处向下滚动。我什至在我的网站上测试过。它工作正常。

于 2017-10-18T10:31:11.610 回答