【问题标题】:Scroll by a variable double or float in Selenium (Java)在 Selenium (Java) 中滚动变量 double 或 float
【发布时间】:2020-09-09 13:47:52
【问题描述】:

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

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

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

【问题讨论】:

    标签: javascript java html selenium scroll


    【解决方案1】:

    试试这个

    ((JavascriptExecutor)driver).executeScript("window.scrollBy(0,arguments[0]);",-f);
    

    谢谢!!

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

        猜你喜欢
        • 2021-12-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-05-09
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多