Das Öffnen von Javascript (Seitenelement) im Vollbildmodus von HTML5 schlägt im Internet Explorer fehl
-
20-12-2019 - |
Frage
Hallo, ich habe eine Webseite, auf der ich ein div-Element (mit einer ID) und seinen Inhalt von der vorhandenen Seite im Vollbildmodus öffnen möchte.Es funktioniert gut in FF und Chrome, funktioniert jedoch nicht in IE10 oder IE11.Ich erhalte keine Fehler im Konsolenprotokoll.
Ich habe eine ähnliche Methodik wie in diesem Online-Beispiel verwendet, das ich gefunden habe und das bei mir im IE ebenfalls nicht funktioniert: http://davidwalsh.name/demo/fullscreen.php.Gibt es eine Einstellung im IE, die aktiviert werden muss, um den Vollbildmodus anzuzeigen?F11 funktioniert bei mir einwandfrei.Ich dachte, es könnte eine Sicherheitseinstellung geben?
Ich verwende den Code wie in der MS-eigenen Dokumentation definiert:http://msdn.microsoft.com/en-us/library/ie/dn254939(v=vs.85).aspx
function requestFullScreen(element) {
// Supports most browsers and their versions.
var requestMethod = element.requestFullScreen ||
element.webkitRequestFullScreen ||
element.mozRequestFullScreen ||
element.msRequestFullScreen;
console.log("element.msRequestFullScreen" + element.msRequestFullScreen);
if (requestMethod) { // Native full screen.
requestMethod.call(element);
} else if (typeof window.ActiveXObject !== "undefined") { // Older IE.
var wscript = new ActiveXObject("WScript.Shell");
if (wscript !== null) {
wscript.SendKeys("{F11}");
}
}
}
$(".fullscreen").live('click',function(event) {
var elem = document.getElementById("fulltextview"); // Make the fulltext
view elements contents go full screen.
requestFullScreen(elem);
});
In diesem Beispiel ist die Variable requestMethod immer undefiniert.
Liegt es daran, dass der IE das Onclick-Ereignis nicht erkennt und die Anfrage daher aus Sicherheitsgründen blockiert?Weitere Hilfe erforderlich.(Ja, ich bin gezwungen, eine alte Version von jQuery 1.4.4 zu verwenden)
Lösung
IE10 unterstützt keinen Vollbildmodus
IE11 unterstützt die Standardversion, z.B. msRequestFullscreen()
.Notiere dass der s
ist Kleinbuchstaben.
Viele gute Informationen hier: http://generatedcontent.org/post/70347573294/is-your-fullscreen-api-code-up-to-date-find-out-how-to