首页 > 解决方案 > 在 Selenium (Java) 中滚动变量 double 或 float

问题描述

我是 Selenium 的新手,在长时间的中断后重新审视编程,如果这不是一个好问题,我深表歉意。我有一个网页,上面有一堆瓷砖(通常每行 4 个,一整排),其高度和宽度根据窗口的大小而变化。在每一行之后,我想向上滚动一个图块的高度。这是我所拥有的(其中 eachtile 是一个包含所有图块的列表):

double ImageHeight = eachtile.getSize().getHeight();
double f = 1.04*ImageHeight;
((JavascriptExecutor)driver).executeScript("window.scrollBy(0,-f);");

我已经尝试了 (0,-f) 表达式中引号和减号的所有变体,无论我收到什么错误说 f 未定义。有谁知道在这里做什么?

标签: javascriptjavahtmlseleniumscroll

解决方案


或者尝试另一种方式,每次滚动到列表中的下一项:

for (WebElement tile : tileList) {
    js.executeScript("arguments[0].scrollIntoView();", tile);
}

推荐阅读