【问题标题】:Selenium WebDriver - check if window is full screenSelenium WebDriver - 检查窗口是否全屏
【发布时间】:2021-07-26 04:11:20
【问题描述】:

我正在使用 Selenium WebDriver 在 Groovy\Java 中工作。有没有办法检查浏览器窗口是否全屏(例如,如果有人按 F11)?我试图在 * 上搜索其他问题,但我只找到了设置全屏的方法,而不是检查窗口是否已经全屏。

有什么想法吗?

【问题讨论】:

    标签: selenium webdriver fullscreen


    【解决方案1】:

    我将建议使用 JavascriptExecutor 来检查 document.fullscreenElement 的状态。

            JavascriptExecutor js = (JavascriptExecutor) driver;
            WebElement fullScreen = (WebElement) js.executeScript("var element = document.fullscreenElement; return element");
    

    必须说这在 OSX 上似乎不起作用,我总是得到一个空值。当然,它可能专门针对视频播放等内容。

    【讨论】:

      【解决方案2】:

      你试过了吗?

          Dimension size = driver.manage().window().getSize();
          int height = size.getHeight();
          int width =  size.getWidth();
          System.out.println("height " + height + " width " + width);
      

      【讨论】:

      • 您是否建议我将窗口的像素大小与计算机的屏幕分辨率进行比较?
      • @user3804769 ,运气好吗?
      • 我不确定您的回复将如何适用于我的问题,抱歉!
      • 我建议不要使用这种方法,因为如果窗口页面恰好与全屏页面大小相同,它可能会给您带来误报。我已经看到它发生了。
      【解决方案3】:

      检查页面源是否具有iframe 属性allowFullScreen

      【讨论】: