繁体   English   中英

如何使用selenium在Web中使用java脚本执行器在视口中垂直居中滚动元素

[英]How to scroll an element vertically center in view port using java script executor in web using selenium

我正在使用 selenium-web 驱动程序,最近在尝试单击浏览器上的某些元素时停止。当尝试单击不在视口的元素时,页面会滚动并将该元素放置在页面顶部。我正在寻找使用 java 脚本执行脚本将元素滚动到视口的中心。

尝试这个

(`(JavascriptExecutor)driver).executeScript("arguments[0].scrollIntoView({block: \"center\"});", element);`

您可以使用 Javascript 执行程序滚动页面试试这个:

 JavascriptExecutor js = (JavascriptExecutor)BrowserUtilities.driver;

从上到下:

js.executeScript("window.scrollBy(0,200)", ""); 

对于从左到右:

js.executeScript("window.scrollBy(200,0)", "");

对于全身滚动试试这个:

((JavascriptExecutor) driver)
     .executeScript("window.scrollTo(0, document.body.scrollHeight)");

滚动到 spcfic 元素试试这个:

WebElement element = driver.findElement(By.id("your Locator"));
((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView();", element);

滚动到特定坐标

((JavascriptExecutor) driver).executeScript("window.scrollBy(0,500)");

暂无
暂无

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

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