繁体   English   中英

如何在C#硒webdriver中自动滚动Div?

[英]How to scroll the Div automatically in C# selenium webdriver?

我使用了“ sendkeys(keys.pagedown)”,但是我需要滚动Div列表的高度。 就像Java脚本中的scroll-Top一样。 有滚动的可能吗?

我的代码是:

driver.FindElementByClassName("body").SendKeys(Keys.PageDown);

我不将代码与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对象的element.scrollIntoView()方法。 该方法的签名是element.scrollIntoView(alignWithTop)

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM