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

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

function maxwin() {
    var wscript = new ActiveXObject("WScript.Shell");
    if (wscript!=null) {
         wscript.SendKeys("{F11}");
    }
}

Который не работает на Mozilla или любых других последних браузерах. Пожалуйста, дайте мне знать, если есть какой-либо способ решить эту проблему.

Благодарю. (Заблаговременно.)

4 ответа

Теперь это возможно в последних версиях Chrome, Firefox и IE(11).

Следуя указаниям Зуула на эту тему, я отредактировал его код, включив в него IE11 и возможность полноэкранного просмотра любого элемента на странице.

JS:

function toggleFullScreen(elem) {
    // ## The below if statement seems to work better ## if ((document.fullScreenElement && document.fullScreenElement !== null) || (document.msfullscreenElement && document.msfullscreenElement !== null) || (!document.mozFullScreen && !document.webkitIsFullScreen)) {
    if ((document.fullScreenElement !== undefined && document.fullScreenElement === null) || (document.msFullscreenElement !== undefined && document.msFullscreenElement === null) || (document.mozFullScreen !== undefined && !document.mozFullScreen) || (document.webkitIsFullScreen !== undefined && !document.webkitIsFullScreen)) {
        if (elem.requestFullScreen) {
            elem.requestFullScreen();
        } else if (elem.mozRequestFullScreen) {
            elem.mozRequestFullScreen();
        } else if (elem.webkitRequestFullScreen) {
            elem.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT);
        } else if (elem.msRequestFullscreen) {
            elem.msRequestFullscreen();
        }
    } else {
        if (document.cancelFullScreen) {
            document.cancelFullScreen();
        } else if (document.mozCancelFullScreen) {
            document.mozCancelFullScreen();
        } else if (document.webkitCancelFullScreen) {
            document.webkitCancelFullScreen();
        } else if (document.msExitFullscreen) {
            document.msExitFullscreen();
        }
    }
}

HTML:

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

Где "document.body" - это любой элемент, который вы так желаете.

Также обратите внимание, что попытки запустить эти полноэкранные команды из консоли не работают в Chrome или IE. У меня был успех с Firebug в Firefox, хотя.

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

*:fullscreen
*:-ms-fullscreen,
*:-webkit-full-screen,
*:-moz-full-screen {
   overflow: auto !important;
}

"Важно!" Кажется необходимым для IE, чтобы сделать его

Используйте этот код вместо

var el = document.documentElement
, rfs = // for newer Webkit and Firefox
       el.requestFullScreen
    || el.webkitRequestFullScreen
    || el.mozRequestFullScreen
    || el.msRequestFullScreen
;
if(typeof rfs!="undefined" && rfs){
  rfs.call(el);
} else if(typeof window.ActiveXObject!="undefined"){
  // for Internet Explorer
  var wscript = new ActiveXObject("WScript.Shell");
  if (wscript!=null) {
     wscript.SendKeys("{F11}");
  }
}

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

Работает и тестируется на Chrome, FF10 и выше, IE 8 и выше, Safari 5..

Невозможно без собственного кода или расширения браузера. ActiveXObject существует только в браузере IE.

Теперь возможно (по крайней мере, браузеры webkit на Safari 5, Chrome 16) с

 webkitEnterFullscreen()

Firefox 10 также работает. проверьте эту ссылку

понятия не имею, что то есть делает в этой теме

Другие вопросы по тегам