是否有任何方法或JavaScript函数可以写入滚动滚动条,这些滚动滚动条是元素的一部分:table/div



在我的应用程序中有2个滚动条。一个是网页滚动栏,另一个是内表滚动栏。我的任务只是向下滚动表滚动栏。因此,我使用了JavaScript

WebElement element = driver.findElement(By.id("table id"));
((JavascriptExecutor)driver).executeScript("argument[0].scrollIntoView(true);", element);

我的测试用例正在通过,但滚动条不会向下移动。因此,请任何人都可以帮助我。谢谢,我正在寻找内部滚动滚动的解决方案。

您可能正在尝试滚动一个已经可见的元素,这就是为什么它不滚动的原因。因此,首先,尝试在表中提供一个不可见的元素,类似于:

WebElement element = driver.findElement(By.id("table id"));
WebElement lastTableElement = element.findElement(By.cssSelector("tr:last-child"));
((JavascriptExecutor)driver).executeScript("argument[0].scrollIntoView(true);", element);

并再次向第一个孩子滚动:

    WebElement lastTableElement = driver.findElement(By.cssSelector("tr:first-child"));

您也可以按像素滚动:

((JavascriptExecutor)driver).executeScript("argument[0].scrollTop += 100;", element);

最新更新