在使用scrollIntoView(top)时,Selenium Webdriver中的固定div中隐藏了文本

时间:2019-04-04 11:31:46

标签: javascript selenium-webdriver

我试图单击屏幕上不可见的链接文本。所以我使用了scrollIntoView(top)javascript使文本可见,但是文本移动到屏幕顶部,隐藏在标头固定div内。因此,我无法单击该链接。谁能帮我解决这个问题

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

1 个答案:

答案 0 :(得分:0)

您当前正在使用top,这不是有效的输入。如果您看看the docs,有几个选择。

  1. 如果您通过true,则该元素将与页面顶部对齐(这看起来不是您想要的)。传递false会将元素与页面底部对齐,这可能可行也可能不可行。因此,一种选择是

    arguments[0].scrollIntoView(false);
    
  2. 您可以通过三个设置来传递对象。您似乎唯一感兴趣的是垂直对齐。 block属性对此进行控制。 block的{​​{1}}设置似乎是您想要的。

    "center"

我在上面链接的文档中还概述了其他选项。请务必阅读它们,然后看哪一种适合您的特定情况,但这足以使您入门。