2012-07-19 21 views
7

Tam ekran için Tam ekran API'sını tam ekran kullanımında kullanıyorum (http://hacks.mozilla.org/2012/01/using-the-fullscreen-api-in-web-browsers). bir tıklama olayı veya konsol ateşböceği ile, gönderim olayıyla veya fareyle veya benzer şekilde otomatikle değil. Tıklama olayı veya benzeri olmadan html5 ile olası otomatik tam ekran mı?html5 ile olası otomatik tam ekran var mı?

Düzenleme: Mümkün değilse güvenlik ve erişilebilirlik nedenlerini anlıyorum, ancak bazı ortamlarda bu umutlu olabilir.

+0

Bu pencerede, pop-up'ların ekrandan daha büyük pencereler oluşturduğu 1998'de vardı. Eğer tarayıcılar bunu isteyerek kasıtlı insan girdisi olmadıkça bunu yapamazsa çok güzel olurdu. – vcsjones

+3

Okumaya ne dersin [yorum açıklayıcı] (http://hacks.mozilla.org/2012/01/using-the-fullscreen-api-in-web-browsers/comment-page-1/#comment-1329634) ? "* tam ekran istekleri yalnızca kullanıcı tarafından oluşturulan olay işleyicilerinde (fare tıklaması ve tuş basımı işleyicileri) verilir. Bu şekilde, kullanıcı sitenin tam ekrana girdiğinde kontrolünü ele geçirebilir ve ayrıca kimlik avı saldırılarına karşı korunmaya yardımcı olur." " – RobIII

+1

SO yanıtlandı: http://stackoverflow.com/a/9747340/215042 – RobIII

cevap

16

Hayır, bu mümkün değil - güvenlik nedeniyle tam ekrana erişme kullanıcının "iznini" gerektirir ve tarayıcı giriş olaylarına bağlıdır.

+4

Açılır pencerelerin açılmasını engelleyen aynı mekanizmadır; Kullanıcı bir pop-up penceresini açmak için bir düğmeye basmalı veya pop-up engelleyici onu engelleyecektir. Bununla birlikte, Facebook, video yüklerken (Chrome'da) net bir çözüm sunmuyor: Ekranda, "Facebook'un videonuzu yüklemek için yeni bir pencere açması gerekiyor" yazan bir kutu görüntülenir. tıklandığında yeni pencere. Benzer bir çözümü, "Devam etmek için tam ekrana gitmemiz gerekiyor" yazan bir mesaj görüntüleyerek ve sayfayı tam ekrana yerleştiren ve mesajı kaldıran bir Tamam düğmesiyle uygulayabilirsiniz. – wecsam

2

Hayır, bu mümkün değil. Güvenlikle ilgili düşünceler için requestFullScreen() doğrudan kullanıcı eylemi (bir tıklama gibi) tarafından tetiklenmelidir. Bu sadece popup'larla aynı.

Referans için https://wiki.mozilla.org/Security/Reviews/Firefox10/CodeEditor/FullScreenAPI ve belki de https://wiki.mozilla.org/Gecko:FullScreenAPI'u okuyun.

+0

Bir olay işleyicisinden çağrılan bir geri aramadan (bir geri aramadan bir geri aramadan ... vb.) Tam ekrana girerken bile problemlerim vardı. Zor! –