[转]你有所不知的HTML發佈Flash的參數(二):allowFullScreen
http://www.luar.com.hk/flashbook/archives/001386.php
allowFullScreen,顧名思義,就是放大Flash畫面到全熒幕(Devnet:文章),沒有Browser邊框。這功能是一個既使開發者喜歡,也受開發者垢病的功能。allowFullScreen充分表演出Macromedia至Adobe那50/50精神──新功能永遠只實現一半,讓開發者喜歡,也使開發者痛苦。過去例子包括v2組件,快速開發卻低效能,FileReference Upload功能,Flash終於可以上傳檔案卻無法接收回Server的結果。(後來Flash Player 9.0.28.0開始提供了uploadCompleteData)
首先,全熒幕必須由Mouse按下或Keyboard按鍵啟動,不可以由ActionScript自動打開,因此不要妄想瀏覽者一進入你的Flash網站,立即是全熒幕畫面。(讚,我討厭那些Flash網站要做在一個PopUp Window裡,這代表設計者功力不足,無法將網站設計好,遊走於不同熒幕大小;當然也討厭未經瀏覽者同意全熒幕畫面。)
全熒幕下,Flash只可以接受Mouse操作,不接受任何Keyboard按鍵,原因是安全限制,怕Flash被人製作釣魚網站(Plishing),欺騙瀏覽者輸入登入畫面。既然這不是技術問題,是安全政策問題,那麼我們不用奢望有一天可以開放全熒幕Keyboard按鍵輸入,而且安全政策,我看會越來越收緊。因此,不少人戲稱這功能只是為YouTube等影片播放Flash而設。
全熒幕其他不足之處,就是沒有提供一個方法給開發者偵測用戶現在看的Flash,是否支援全熒幕,雖然你可以偵測Flash Player版本,如果是9.0.28.0或以上,理論上代表支援全熒幕。但發佈Flash的HTML,必須加上allowFullScreen=true,才可以支援全熒幕。雖然你可以說自己製作Flash,當然知道自己發佈Flash的HTML的情況。不過,有時Flash被人轉載到地方,不清楚對方的發佈Flash的HTML的情況。(如果你知道方法去偵測用戶現在看的Flash,是否支援全熒幕,請告訴我)
另外,當發佈Flash的HTML加上wmode=transparent,即使是9.0.28.0和allowFullScreen=true,全熒幕都是無法啟動!(這Bug在9.0.60解決了),換句話說,影響的只有9.0.28, 9.0.45, 9.0.47, 9.0.48。
因此,一個全熒幕功能,背後卻引起不少煩惱,如果當初沒有這功能,開發者要浪費的時間是否會少了,不知道……