нажмите на полный экран - PullRequest
       14

нажмите на полный экран

57 голосов
/ 10 октября 2010

Я создаю веб-приложение для будущего интернет-магазина Chrome.Есть ли способ имитировать нажатие F11?Или просто команда, которая сделает текущее окно полноэкранным?

Ответы [ 8 ]

134 голосов
/ 17 мая 2012

Я понимаю, что это очень старый вопрос, и что предоставленные ответы были адекватными, поскольку он активен, и я натолкнулся на это, проведя некоторое исследование в полноэкранном режиме, я оставляю здесь одно обновление этой темы:

Есть способ «симулировать» F11 , но он не может быть автоматизирован, пользователю фактически нужно нажать кнопку, например, для запускаполноэкранный режим.

  • Переключение статуса полноэкранного режима при нажатии кнопки

    В этом примере пользователь может переключиться наи в полноэкранном режиме, нажав кнопку:

    HTML-элемент, который будет действовать как триггер:

    <input type="button" value="click to toggle fullscreen" onclick="toggleFullScreen()">
    

    JavaScript:

    function toggleFullScreen() {
      if ((document.fullScreenElement && document.fullScreenElement !== null) ||    
       (!document.mozFullScreen && !document.webkitIsFullScreen)) {
        if (document.documentElement.requestFullScreen) {  
          document.documentElement.requestFullScreen();  
        } else if (document.documentElement.mozRequestFullScreen) {  
          document.documentElement.mozRequestFullScreen();  
        } else if (document.documentElement.webkitRequestFullScreen) {  
          document.documentElement.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT);  
        }  
      } else {  
        if (document.cancelFullScreen) {  
          document.cancelFullScreen();  
        } else if (document.mozCancelFullScreen) {  
          document.mozCancelFullScreen();  
        } else if (document.webkitCancelFullScreen) {  
          document.webkitCancelFullScreen();  
        }  
      }  
    }
    
  • Перейти кПолный экран при нажатии кнопки

    Этот пример позволяет включить полноэкранный режим без чередования, т.е. вы переключаетесь в полноэкранный режим, но для возврата к обычному экрану потребуетсяиспользовать клавишу F11:

    HTML-элемент, чтобы действовать как триггер:

    <input type="button" value="click to go fullscreen" onclick="requestFullScreen()">
    

    JavaScript:

    function requestFullScreen() {
    
      var el = document.body;
    
      // Supports most browsers and their versions.
      var requestMethod = el.requestFullScreen || el.webkitRequestFullScreen 
      || el.mozRequestFullScreen || el.msRequestFullScreen;
    
      if (requestMethod) {
    
        // Native full screen.
        requestMethod.call(el);
    
      } else if (typeof window.ActiveXObject !== "undefined") {
    
        // Older IE.
        var wscript = new ActiveXObject("WScript.Shell");
    
        if (wscript !== null) {
          wscript.SendKeys("{F11}");
        }
      }
    }
    

Источники найдены вместе с полезной информацией по этому вопросу:

Разработчик MozillaСеть

Как сделать в Javascript полноэкранные окна (растягивание по всему экрану)

Как сделать браузер полноэкранным с помощью события клавиши F11через JavaScript

Полноэкранный API Chrome

jQuery полноэкранный плагин событий, версия 0.2.0

JQuery-полноэкранный-плагин

53 голосов
/ 10 октября 2010

Это возможно с JavaScript .

var elem = document.getElementById("myvideo");
if (elem.requestFullscreen) {
  elem.requestFullscreen();
} else if (elem.msRequestFullscreen) {
  elem.msRequestFullscreen();
} else if (elem.mozRequestFullScreen) {
  elem.mozRequestFullScreen();
} else if (elem.webkitRequestFullscreen) {
  elem.webkitRequestFullscreen();
}
4 голосов
/ 26 сентября 2017

Короткая версия персонального букмарклета

javascript: document.body.webkitRequestFullScreen(); 

перейти в полноэкранный режим ← Вы можете перетащить эту ссылку на панель закладок, чтобы создать букмарклет, но впоследствии необходимо отредактировать ее URL: Удалите все до javascript, включая одну косую черту: http://delete_me/javascript: [...]

Это работает для меня в Google Chrome. Вы должны проверить, работает ли он в вашей среде, и иначе использовать другую формулировку вызова функции, например, javascript:document.body.requestFullScreen(); - другие возможные варианты см. В других ответах.

На основании ответов @Zuul и @default - спасибо!

3 голосов
/ 08 февраля 2017

Если вы хотите переключить всю вкладку в полноэкранный режим (точно так же, как клавиша F11) document.documentElement - это элемент, который вы ищете:

function go_full_screen(){
    var elem = document.documentElement;
    if (elem.requestFullscreen) {
      elem.requestFullscreen();
    } else if (elem.msRequestFullscreen) {
      elem.msRequestFullscreen();
    } else if (elem.mozRequestFullScreen) {
      elem.mozRequestFullScreen();
    } else if (elem.webkitRequestFullscreen) {
      elem.webkitRequestFullscreen();
    }
}
1 голос
/ 27 февраля 2019

Я попробовал другие ответы на этот вопрос, и есть ошибки с различными API-интерфейсами браузера, в частности Fullscreen против FullScreen. Вот мой код, который работает с основными браузерами (по состоянию на 1 квартал 2019 года) и должен продолжать работать, когда они стандартизируются.

function fullScreenTgl() {
    let doc=document,elm=doc.documentElement;
    if      (elm.requestFullscreen      ) { (!doc.fullscreenElement   ? elm.requestFullscreen()       : doc.exitFullscreen()        ) }
    else if (elm.mozRequestFullScreen   ) { (!doc.mozFullScreen       ? elm.mozRequestFullScreen()    : doc.mozCancelFullScreen()   ) }
    else if (elm.msRequestFullscreen    ) { (!doc.msFullscreenElement ? elm.msRequestFullscreen()     : doc.msExitFullscreen()      ) }
    else if (elm.webkitRequestFullscreen) { (!doc.webkitIsFullscreen  ? elm.webkitRequestFullscreen() : doc.webkitCancelFullscreen()) }
    else                                  { console.log("Fullscreen support not detected.");                                          }
    }
1 голос
/ 10 октября 2010

Вот несколько способов сделать это:

Я бы предложил предоставить всплывающее окно, спрашивающее пользователя, хочет ли он / она перейти на полный экран, а затем соответствующим образом вызвать этот javascript.

0 голосов
/ 14 января 2019
var elem = document.getElementById("myvideo");
function openFullscreen() {
  if (elem.requestFullscreen) {
      elem.requestFullscreen();
  } else if (elem.mozRequestFullScreen) { /* Firefox */
      elem.mozRequestFullScreen();
  } else if (elem.webkitRequestFullscreen) { /* Chrome, Safari & Opera */
      elem.webkitRequestFullscreen();
  } else if (elem.msRequestFullscreen) { /* IE/Edge */
      elem.msRequestFullscreen();
  }
}
//Internet Explorer 10 and earlier does not support the msRequestFullscreen() method.
0 голосов
/ 15 июля 2018
//set height of html
$("html").css("height", screen.height);
//set width of html
$("html").css("width", screen.width);
//go to full screen mode
document.documentElement.webkitRequestFullscreen();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...