Page Scrolling in Selenium WebDriver Using Java
In Selenium 1 (Selenium RC), page scrolling could be achieved using the selenium.getEval() method. To replicate this functionality in Selenium 2 (WebDriver), we can leverage the JavascriptExecutor interface.
Scrolling Down
For scrolling down the page by a certain pixel value, you can use either of the following JavaScript snippets:
JavascriptExecutor jse = (JavascriptExecutor)driver; jse.executeScript("window.scrollBy(0,250)");
jse.executeScript("scroll(0, 250);");
Scrolling Up
To scroll up the page, use the following JavaScript snippets:
jse.executeScript("window.scrollBy(0,-250)");
jse.executeScript("scroll(0, -250);");
Scrolling to the Bottom
To scroll to the bottom of the page, you have several options:
Using JavaScriptExecutor:
jse.executeScript("window.scrollTo(0, document.body.scrollHeight)");
Using Keys.CONTROL Keys.END:
driver.findElement(By.cssSelector("body")).sendKeys(Keys.CONTROL, Keys.END);
Using Java Robot Class:
Robot robot = new Robot(); robot.keyPress(KeyEvent.VK_CONTROL); robot.keyPress(KeyEvent.VK_END); robot.keyRelease(KeyEvent.VK_END); robot.keyRelease(KeyEvent.VK_CONTROL);
The above is the detailed content of How to Scroll a Page in Selenium WebDriver Using Java?. For more information, please follow other related articles on the PHP Chinese website!