[英]Is my Flash SWF on screen?
我希望我的Flash電影在屏幕上可見之前不播放,然后在屏幕外暫停播放。 有沒有一種方法可以捕獲一些事件,該事件指示swf正在呈現或可見,或者可以在我添加addListener的瀏覽器窗口的可見范圍之內,以便知道它何時在視圖中?
使用Flash的ExternalInterface調用一個JavaScript函數,該函數檢查是否在屏幕外。 在javascript中,將JQuery與Viewport插件一起使用來確定我們是否不在屏幕上。 ( http://www.appelsiini.net/projects/viewport )。
我還沒有測試過Viewport插件,但是我已經與使用它的人進行了交談,並且對他們來說效果很好。
在as3中:
var returnValue:int = ExternalInterface.call("jsCheckerFunction");
if(returnValue == 1) // your flash is on-screen.
在javascript中:
function jsCheckerFunction()
{
if($("#flashContent:in-viewport").length > 0)
return 1; // flash div visible
return 0; // returns 0 if the element is offscreen
}
您可以讓它在每一幀上調用jsCheckerFunction來查看狀態是否已更改。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.