2013-07-05 32 views
0

我有動畫的時間軸中的聲音,我的瑞士法郎是在摺疊之上(在一個非常高的HTML頁面)我想靜音一切,如果用戶滾動超過瑞士法郎上這一頁。有誰知道如果如何這可以做到?靜音時間軸的聲音,如果瑞士法郎不可見

+0

是的,可以做到。在Javascript中,您會聽「onscroll」事件來檢測Flash元素何時不在頁面上。然後通過Flash的ExternalInterface類,Javascript可以告訴Flash使聲音靜音。 –

+0

@SunilD如果用戶禁用了JavaScript,該怎麼辦? – 2013-07-06 03:41:48

+0

@Abe偉大的解決方案! –

回答

1

http://help.adobe.com/en_US/as3/mobile/WS4bebcd66a74275c36cfb8137124318eebc6-8000.html

兩者如果您在發佈設置設定爲Flash Player 10.1或更高版本,您可以輕鬆地停止音頻/視頻:

Flash Player 10.1的增強CPU使用率

閃光Player 10.1引入了兩項有助於節省CPU處理的新功能。這些功能包括在SWF內容脫離屏幕時暫停和恢復,以及限制頁面上Flash Player實例的數量。

暫停,節流和恢復

注:暫停,節流和恢復功能不適用於Adobe®AIR®應用程序。 爲了優化CPU和電池使用情況,Flash Player 10.1引入了與非活動實例相關的新功能。此功能允許您在內容關閉和屏幕上時通過暫停和恢復SWF文件來限制CPU使用率。通過此功能,Flash Player可以釋放盡可能多的內存,方法是刪除播放內容時可以重新創建的任何對象。當整個內容不在屏幕上時,內容將被視爲不在屏幕上。

兩種情況會導致SWF內容屏幕之外:

**這顯然是這裏所說:* *

用戶滾動頁面,導致SWF內容移出屏幕。 在這種情況下,如果有任何音頻或視頻播放,內容繼續播放,但渲染停止。如果沒有音頻或視頻播放,爲確保播放或ActionScript執行未暫停,請將hasPriority HTML參數設置爲true。但是,請記住,無論hasPriority HTML參數的值如何,當內容處於屏幕外或隱藏狀態時,SWF內容呈現都會暫停。

在瀏覽器中打開一個選項卡,導致SWF內容移動到後臺。 在這種情況下,無論hasPriority HTML標記的值如何,SWF內容都會減慢或減速至2至8 fps。停止音頻和視頻播放,除非SWF內容再次可見,否則不會處理內容呈現。 對於在Windows和Mac桌面瀏覽器上運行的Flash Player 11.2及更高版本,可以在應用程序中使用ThrottleEvent。 Flash Player在Flash Player暫停,遏制或繼續播放時調度ThrottleEvent。

ThrottleEvent是一個廣播事件,這意味着它由所有EventDispatcher對象調度,併爲此事件註冊一個偵聽器。有關廣播事件的更多信息,請參閱DisplayObject類。

相關問題