Selenium Webdriver:使用Javascript滚动到顶部

Selenium Webdriver:使用Javascript滚动到顶部,javascript,selenium,selenium-webdriver,nodes,Javascript,Selenium,Selenium Webdriver,Nodes,我将SeleniumWebDriver与javascript和node.js一起使用 在测试的某个步骤中,我必须自动单击页面顶部的按钮 但是,在我进行之前的一些处理时,页面会自动滚动到bootom,因此我的按钮(在顶部)不再出现,因此我捕获到以下错误: Uncaught WebDriverError: unknown error: Element <li>...</li> is not clickable at point (707, 10). Other element

我将SeleniumWebDriver与javascript和node.js一起使用

在测试的某个步骤中,我必须自动单击页面顶部的按钮

但是,在我进行之前的一些处理时,页面会自动滚动到bootom,因此我的按钮(在顶部)不再出现,因此我捕获到以下错误:

Uncaught WebDriverError: unknown error: Element <li>...</li> is not clickable at point (707, 10). Other element would receive the click: <li class="menumain crm-Campaigns" tabindex="11">...</li>
未捕获WebDriverError:未知错误:元素
  • 在点(707,10)处不可单击。其他元素将收到单击:
  • 通过一些谷歌搜索,我将滚动到顶部以显示按钮


    我该如何做???

    尝试下面的代码,您将能够向上滚动:

    WebDriver driver = new FirefoxDriver();
    JavascriptExecutor jse = (JavascriptExecutor)driver;
    
    jse.executeScript("window.scrollBy(0,-250)", "");
    OR,
    jse.executeScript("scroll(0, -250);");
    
    在javascript中:

    window.scrollTo(0, 0);
    

    这将滚动到页面的左上角。但在大多数情况下,这相当于顶部。

    不要转到页面顶部,而是抓住按钮的xpath或id。 这里的代码显示了如何使用selenium单击按钮。
    WebDriver=newfirefoxdriver();
    JavascriptExecutor jse=(JavascriptExecutor)驱动程序;
    jse.executeScript(“document.getElementById('button')。click();”

    使用下面的代码进行滚动
    jse.executeScript(“window.scrollBy(0,-200)”,“”)

    我是这样做的:

    driver.executeScript('scroll(0, -250);').then(function() {
        driver.sleep(3000);
    });
    

    我在node.js下运行,它不是一个简单的图形滚动->未捕获引用错误:窗口未定义他正在将Selenium webdriver与javascript和node.js一起使用。您的示例是java绑定?他将SeleniumWebDriver与javascript&node.js一起使用。你的例子是java绑定?