2012-07-19 8 views
7

Ich bin auf der Verwendung der Vollbild-API in Web-Browsern (http://hacks.mozilla.org/2012/01/ using-the-fullscrea-api-in-web-browsers) für Vollbild, aber nur mit funktioniert ein click event oder mit console firebug, nicht mit submit event oder mouseover oder ähnlichem für make automatic. Ist der automatische Vollbildmodus mit html5 ohne Klick Event oder ähnliches möglich?Ist der automatische Vollbildmodus mit HTML5 möglich?

Bearbeiten: Ich verstehe die Sicherheit und Zugänglichkeit Gründen, wenn nicht möglich, aber in einigen Umgebungen kann dies hoffnungsvoll sein.

+0

Wir hatten im Jahr 1998, dass, wenn Popups Fenster erstellt größer als der Bildschirm. Es wäre wirklich schön, wenn Browser das nicht tun könnten, wenn nicht absichtliche menschliche Eingaben dies wünschen. – vcsjones

+3

Wie wäre es mit Lesen [der Kommentar erklärt] (http://hacks.mozilla.org/2012/01/using-the-fullscreen-api-in-web-browsers/comment-page-1/#comment-1329634) es ? „* Vollbild-Anfragen werden nur in nutzergenerierten Event-Handler (Mausklick und Tastendruck-Handler). Auf diese Weise der Benutzer die Kontrolle über gewährt werden kann, wenn die Website Vollbild eintritt, auch Schutz vor Phishing-Attacken zu helfen. *“ – RobIII

+1

Es hat auch beanwortet auf SO: http://stackoverflow.com/a/9747340/215042 – RobIII

Antwort

16

Nein, das ist nicht möglich - aus Sicherheitsgründen erfordert der Zugriff auf den Vollbildmodus die "Erlaubnis" des Benutzers und ist somit an Browsereingabeereignisse gebunden.

+4

Es ist derselbe Mechanismus, der das Öffnen von Popup-Fenstern verhindert; Der Benutzer muss auf eine Schaltfläche klicken, um ein Popup-Fenster zu öffnen, oder der Popup-Blocker blockiert sie. Facebook hat jedoch eine nette kleine Lösung dieses Problem, wenn das Hochladen von Videos (in Chrome): es zeigt einen Kasten auf dem Bildschirm, der sagt: „Facebook braucht ein neues Fenster zu öffnen, um Ihr Video zu laden,“ mit einer OK-Taste, die das öffnet neues Fenster beim Anklicken. Sie können eine ähnliche Lösung implementieren, indem Sie eine Meldung anzeigen, die besagt: "Zum Fortfahren müssen Sie den Vollbildmodus verwenden" und eine OK-Schaltfläche, mit der die Seite im Vollbildmodus angezeigt und die Nachricht entfernt wird. – wecsam

2

Nein, das ist nicht möglich. Die requestFullScreen() muss aus Sicherheitsgründen durch eine direkte Benutzeraktion (wie ein Klick) ausgelöst werden. Es ist genau so wie bei Popups.

Lesen Sie https://wiki.mozilla.org/Security/Reviews/Firefox10/CodeEditor/FullScreenAPI und vielleicht https://wiki.mozilla.org/Gecko:FullScreenAPI als Referenz.

+0

Ich habe sogar Probleme hat Vollbild von einem Rückruf-Eingabe (von einem Rückruf von einem Rückruf von einem ... usw.) von einem Event-Handler aufgerufen. Tricky! –

Verwandte Themen