如何在c# selenium webdriver中自动滚动Div

本文关键字:滚动 Div webdriver selenium | 更新日期: 2023-09-27 17:51:14

我使用了"sendkeys(keys.pagedown)",但我需要滚动div列表的高度。像Java脚本中的scroll-Top。有滚动的可能性吗?

我的代码是:
driver.FindElementByClassName("body").SendKeys(Keys.PageDown);

如何在c# selenium webdriver中自动滚动Div

我不使用SendKeys(Keys.PageDown)的代码;滚动。

但是我知道滚动的javascript代码。

我用这行代码来滚动页面。

JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("window.scrollBy(0,400)", "");

这将滚动你的页面400点。你可以增加它

也有不同的风味可用于这个JS,特别是滚动。

享受它。


我不使用c#代码硒脚本,所以我已经在JAVA中编写代码。请根据您的语言修改。

如果你的HTML DOM中有元素

如果你的滚动条有HTML元素那么你可以这样写

public static boolean scroll_Page(WebElement webelement, int scrollPoints){
Action dragger = new Actions(driver);
int numberOfPixelsToDragTheScrollbarDown = 10;
    for (int i = 10; i < scrollPoints; i = i + numberOfPixelsToDragTheScrollbarDown){
       dragger.moveToElement(webelement).clickAndHold().moveByOffset(0, numberOfPixelsToDragTheScrollbarDown).release(webelement).build().perform();
    }
}

您可以像这样创建方法。传递滚动块元素和滚动点

试试这个。

使用JavaScript元素对象的element.scrollIntoView()方法。该方法的签名为element.scrollIntoView(alignWithTop)

篇好文章http://www.toolsqa.com/selenium-webdriver/scroll-element-view-selenium-javascript/