小编典典

不同的滚动选项之间有什么区别?

javascript

我尝试了几种向表添加滚动的方法,但是只有其中一种可以正常工作。它们之间有什么区别?

第一:

JavascriptExecutor js = (JavascriptExecutor) driver;
js.executeScript("arguments[0].scrollIntoView();", Element);

第二:

WebElement element1 = driver.findElement(By.id("scrolled_element"));
((JavascriptExecutor) driver).executeScript("arguments[0].scrollIntoView(true);", element1);

第三:

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

第四:

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

阅读 343

收藏
2020-05-01

共1个答案

小编典典

Element.scrollIntoView()

Element.scrollIntoView()方法将调用该元素的元素滚动到浏览器窗口的视口中。

句法:

  • element.scrollIntoView()
  • element.scrollIntoView(alignToTop) //布尔参数
  • element.scrollIntoView(scrollIntoViewOptions)//对象参数

您的用例:

  • executeScript("arguments[0].scrollIntoView();", Element):这行代码会将元素滚动到浏览器窗口的可见区域。
  • executeScript("arguments[0].scrollIntoView(true);", element1):此代码行将滚动元素以使其与可滚动祖先的视口顶部对齐。此选项对应于scrollIntoViewOptions: {block: "start", inline: "nearest"}。基本上,这是默认值。
  • executeScript("arguments[0].scrollIntoView(false)", element1);:这行代码将滚动要与可滚动祖先的视口底部对齐的元素。此选项对应于scrollIntoViewOptions: {block: "end", inline: "nearest"}

Window.scrollBy()

window.scrollBy()方法以给定的数量滚动当前窗口中的文档。

句法:

  • window.scrollBy(x-coord, y-coord)
  • window.scrollBy(options)

参数:

  • x-coord 是要滚动的水平像素值。
  • y-coord 是要滚动的垂直像素值。
  • options是一ScrollToOptions本字典。

您的用例:

  • executeScript("window.scrollBy(0,1000)"):这行代码将滚动窗口文档下降的0水平像素和1000您希望通过滚动垂直像素。

Window.scrollTo()

Window.scrollTo()方法滚动到文档中的一组特定坐标。

句法:

  • window.scrollTo(x-coord, y-coord)
  • window.scrollTo(options)

参数:

  • x-coord 是要在左上方显示的文档水平轴上的像素。
  • y-coord 是要在左上方显示的文档垂直轴上的像素。
  • options是一ScrollToOptions本字典。

您的用例:

  • executeScript("window.scrollTo(0, document.body.scrollHeight)"):这行代码将滚动窗口的文件下来的bottom页面。
2020-05-01