首页 > 解决方案 > 浏览器无头时滑块不移动

问题描述

当 chrome 处于无头模式时,滑块不会向右移动。我已经尝试了所有这些但没有成功。请让我知道还能做什么?

<div class="noUi-handle noUi-handle-lower" data-handle="0" tabindex="0" role="slider" aria-orientation="horizontal" aria-valuemin="0.0" aria-valuemax="100.0" aria-valuenow="0.0" aria-valuetext="0.00"><div class="noUi-tooltip">undefined</div></div>


@FindBy(how = How.XPATH, using = "//div[@role='slider']")
public WebElement someslider;

        Actions action = new Actions(driver);

        action.dragAndDropBy(someslider, 200, 100).perform();

        action.clickAndHold(someslider).moveByOffset(200,100).release(someslider).release().build().perform();

        int x=10;
       int width=someslider.getSize().getWidth();
        action.dragAndDropBy(someslider, ((width*x)/100), 0);
        action.build().perform();

          action.clickAndHold().dragAndDropBy(someslider, 200, 100).build().perform();

也试过

((JavascriptExecutor) driver).executeScript("document.getElementsByClassName('noUi-handle noUi-handle-lower').setAttribute('aria-valuetext', '5.00')");

我的浏览器配置

        if (Hooks.environmentConfigurations.isHeadlessMode()) {
            chromeOptions.addArguments("--headless", "window-size=1400,600");
            chromeOptions.setPageLoadStrategy(PageLoadStrategy.NONE);
            chromeOptions.addArguments("--no-sandbox");
            chromeOptions.addArguments("--disable-infobars");
            chromeOptions.addArguments("--disable-dev-shm-usage");
            chromeOptions.addArguments("--disable-browser-side-navigation");
            chromeOptions.addArguments("--disable-gpu");
        }

标签: seleniumselenium-webdriverselenium-chromedrivergoogle-chrome-headless

解决方案


将窗口大小更改为 window-size=1600,800 并且可以正常工作


推荐阅读