任何人都可以请我帮助自动使用Java的WebDriver向下滚动功能吗?垂直向下滚动并使用java在Selenium WebDriver中向上滚动
在我的情况下,对于雅虎邮件“登录”显示(可见),一旦我垂直向下滚动鼠标。
任何人都可以请我帮助自动使用Java的WebDriver向下滚动功能吗?垂直向下滚动并使用java在Selenium WebDriver中向上滚动
在我的情况下,对于雅虎邮件“登录”显示(可见),一旦我垂直向下滚动鼠标。
可以垂直向下通过使用以下代码滚动:
((JavascriptExecutor) driver).executeScript("scroll(0,250);");
类似地,还可以通过改变y坐标为负向上滚动:
((JavascriptExecutor) driver).executeScript("scroll(0, -250);");
也可以使用的以下代码: 向下滚动:
((JavascriptExecutor) driver).executeScript("window.scrollBy(0,250)", "");
对于滚动起来:
((JavascriptExecutor) driver).executeScript("window.scrollBy(0, -250)", "");
滚动到页面的元素:
((JavascriptExecutor)driver).executeScript("arguments[0].scrollIntoView();"
,webElement);
太棒了,这个效果很好。我一直在尝试这个好几个小时,其他选项都没有工作 – Kalle 2013-10-17 15:00:47
滚动起来应该如下:
((JavascriptExecutor) driver).executeScript("scroll(0,-250);");
Caren是对的。不需要改变x坐标。 y坐标应为负值以向上滚动。 – 2015-07-07 07:47:13
如果你是不确定页面的高度,你会滚动到下面的部分页面,您可以找到该网页的主要框架,并使用下面的代码,而无需使用滚动或scrollBy
scr1 = driver.find_element_by_xpath('xpath')
driver.execute_script("arguments[0].scrollTop = arguments[0].scrollHeight", scr1)
这将自动转到远页面向下滚动。你可以看到一个例子here。
如何知道滚动完成的时间? – Edgar 2015-08-11 12:41:28
为了使某个元素有时需要滚动显示。例如,您要单击位于页面底部的元素。在这种情况下,它需要向下滚动。点击成功后,表示滚动已完成,底部的链接可见。 – 2015-08-12 04:59:26