Cleaner distinction between document element and document.

This commit is contained in:
Ján Jockusch 2019-05-03 14:28:19 +02:00
parent 8fc141c0cb
commit 3e1bf5fce9
1 changed files with 17 additions and 20 deletions

View File

@ -1168,17 +1168,14 @@ const UI = {
* ------v------*/ * ------v------*/
toggleFullscreen() { toggleFullscreen() {
if (document.fullscreenElement || // alternative standard method var doc = document;
document.mozFullScreenElement || // currently working methods if (window.self !== window.top) {
document.webkitFullscreenElement || doc = window.parent.document;
document.msFullscreenElement) { }
var doc = document; if (doc.fullscreenElement || // alternative standard method
if (window.parent != window) { doc.mozFullScreenElement || // currently working methods
var iframeid = WebUtil.getQueryVar('iframeid', null); doc.webkitFullscreenElement ||
if (iframeid) { doc.msFullscreenElement) {
doc = window.parent.document.getElementById(iframeid);
}
}
if (doc.exitFullscreen) { if (doc.exitFullscreen) {
doc.exitFullscreen(); doc.exitFullscreen();
} else if (doc.mozCancelFullScreen) { } else if (doc.mozCancelFullScreen) {
@ -1189,19 +1186,19 @@ const UI = {
doc.msExitFullscreen(); doc.msExitFullscreen();
} }
} else { } else {
var doc = document.documentElement; var doc_el = document.documentElement;
if (window.parent != window) { if (window.self !== window.top) {
var iframeid = WebUtil.getQueryVar('iframeid', null); var iframeid = WebUtil.getQueryVar('iframeid', null);
if (iframeid) { if (iframeid) {
doc = window.parent.document.getElementById(iframeid); doc_el = window.parent.document.getElementById(iframeid);
} }
} }
if (doc.requestFullscreen) { if (doc_el.requestFullscreen) {
doc.requestFullscreen(); doc_el.requestFullscreen();
} else if (doc.mozRequestFullScreen) { } else if (doc_el.mozRequestFullScreen) {
doc.mozRequestFullScreen(); doc_el.mozRequestFullScreen();
} else if (doc.webkitRequestFullscreen) { } else if (doc_el.webkitRequestFullscreen) {
doc.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT); doc_el.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT);
} else if (doc.body.msRequestFullscreen) { } else if (doc.body.msRequestFullscreen) {
doc.body.msRequestFullscreen(); doc.body.msRequestFullscreen();
} }