Mr. Wolf: Frage zum Wiki-Artikel „Fullscreen“

problematische Seite

Guten Tag,

beim Probieren mit den Beispielen auf der Seite bin ich auf folgendes Problem gestoßen: Das Öffnen des Vollbildmodus funktioniert einwandfrei, jedoch nicht das Schließen.

Wenn ich das richtig verstanden habe, gibt die Zeile

(window.matchMedia('(display-mode: fullscreen)').matches)

aus, ob sich das Objekt im Vollbildmodus befindet. Sie müsste mit „true“ antworten falls dies der Fall ist, anderenfalls mit „false“.

Dies ist aber nicht der Fall. In der Ausgabe der Konsole (beim zweiten Beispiel) erkenne ich, dass im Vollbildmodus ebenfalls „false“ zurückgegeben wird und demzufolge kein Zurückschalten erfolgt. Getestet habe ich mit Chrome, Edge und Chrome für Android.

Weiß jemand, wo das Problem liegen könnte?

Grüße von Mr. Wolf

  1. problematische Seite

    Hallo Mr. Wolf,

    du meinst Beispiel:JS-Fullscreen-1.html?

    Dies ist aber nicht der Fall. In der Ausgabe der Konsole (beim zweiten Beispiel) erkenne ich, dass im Vollbildmodus ebenfalls „false“ zurückgegeben wird

    Ich habe die Seite im Frickl, im Vorschau-iframe und auch als eigene Seite geöffnet. Wenn ich mit dem Button zwischen Fullscreen und normal umschalte, steht im Log

    toggler false
    enter
    fullscreenchange
    toggler true
    exit
    exit
    fullscreenchange
    

    Das doppelte exit liegt daran, dass exitFullscreen() selbst nochmal loggt. Insofern ist hier alles erwartungskonform. Die matches Eigenschaft muss im Fullscreen-Modus true gemeldet haben, sonst wäre anderes passiert. Browser war Windows Chrome 104.

    Edith sagt: In Chrome für Android funktioniert es NICHT. Das muss ich mir näher anschauen.

    Edith trägt nach: Es mag daran liegen, dass Chrome für Android den fullscreen-Modus, der mit requestFullscreen für ein einzelnes Element gesetzt wird, nicht erkennt. Bisher habe ich dazu keine Meldungen im Netz gefunden, die eine Antwort haben, nur eine unbeantwortete Frage bei Stackoverflow

    Das Beispiel ist ohnehin unsauber, es koppelt zu wenig auf die tatsächlichen Zustände zurück. Beispiel ist die toggler-Funktion, sie müsste entweder mit window.matchMedia oder document.fullscreenElement abfragen, wie der tatsächliche Status ist und sich nicht auf Klasse und Textinhalt des Buttons verlassen. One for the todo list…

    Rolf

    --
    sumpsi - posui - obstruxi
    1. problematische Seite

      Hallo Rolf,

      genau - das Beispiel Beispiel:JS-Fullscreen-1.html ist gemeint.

      Zuerst muss ich mich entschuldigen. Das Beispiel auf dem PC funktionierte offenbar nicht, weil dort per Gruppenrichtlinie im Browser der Vollbildmodus deaktiviert war. Das Bild schaltete dann zwar trotzdem in eine Art Vollbildmodus, aber Adresszeile, Statuszeile etc. des Browsers waren noch sichtbar. Daher hat das Script vermutlich den Vollbildmodus nicht erkannt und konnte deshalb nicht korrekt reagieren.

      Hinsichtlich Chrome und Edge hattest du ja selbst bereits etwas angemerkt. Du hast Recht, gemäß Log wird der Fullscreen-Modus nicht erkannt.

      Ich danke für deine schnelle Antwort und deine Mühe!

      Gruß Mr. Wolf