js怎麼判斷flash swf檔案是否載入完畢_javascript技巧
js怎麼判斷flash是否載入完畢了呢?
我們怎麼在flash載入完畢之時,回呼一個我們設定的js函數?
這個問題,一直困擾了我很久,直到今天,請教了一個非常牛B的人物之後,突然來了感覺!
呵呵,也許,這個問題在你們看來不是問題,不過對我來說,確實是個問題,因為我一直不知道該怎麼判斷swf檔案是否載入完畢了?
從前都是只知道img.onload等等。
好了,言歸正傳,我們到底該怎樣判斷一個flash是否加載完了呢?
沒錯,就是輪詢,然後判斷flash的某個方法是否能正常運作?
範例如下(偽代碼):
(function () { var flash = 网页上某个flash对象。 var interval = setInterval(function () { try { if(flash.IsPlaying()) { //轮询flash的某个方法即可 callBack && callBack.call(flash, args); //回调函数 clearInterval(interval); } } catch (ex) { } }, 1000); var callBack = function () { alert('loaded'); } })();
//具體運用時,flash放進setInterval或者setTimeout的函數閉包中時,可能會由於JavaScript單線程問題,導致flash不能調用IsPlaying等flash player函數或者調用結果不對等狀況,這裡有個臨時的解決辦法,我們可以讀取在輪詢函數中讀取flash的TotalFrames屬性,讀取得到,我們就可以認為flash已經完全載入到頁面中了! ! !
經測試,確實可行,不過可能會有1—2秒的時間延遲。
/////////////有什麼不對的地方,歡迎勘誤! ! ! ! ! ! ! ! ! //////////////
/*後面附上可控制Flash Player的js方法清單*/
Play() ---------------------------------------- 播放動畫
StopPlay()------------------------------------------------停止動畫
IsPlaying()-----------------------------------動畫是否正在播放
GotoFrame(frame_number)---------------- 跳到某個畫面
TotalFrames()------------------------------- 取得動畫總幀數
CurrentFrame()------------------------------回傳目前動畫所在幀數-1
Rewind()-------------------------------------使動畫回傳第一格
SetZoomRect(left,top,right,buttom)-------放大指定區域
Zoom(percent)------------------------------改變動畫大小
Pan(x_position,y_position,unit)------------使動畫在x,y方向上平移
PercentLoaded()----------------------------返回動畫被載入的百分比
LoadMovie(level_number,path)----------- 載入動畫
TGotoFrame(movie_clip,frame_number)- movie_clip跳到指定幀數
TGotoLabel(movie_clip,label_name)------ movie_clip跳到指定標籤
TCurrentFrame(movie_clip)--------------- 回傳movie_clip目前幀-1
TCurrentLabel(movie_clip)-----------------回傳movie_clip目前標籤
TPlay(movie_clip)---------------------------播放movie_clip
TStopPlay(movie_clip)----------------------停止movie_clip的播放
GetVariable(variable_name)-----------------取得變數
SetVariable(variable_name,value)-----------變數賦值
TCallFrame(movie_clip,frame_number)---call指定幀上的action
TCallLabel(movie_clip,label)----------------call指定標籤上的action
TGetProperty(movie_clip,property)--------取得movie_clip的指定屬性
TSetProperty(movie_clip,property,number)-設定movie_clip的指定屬性

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

Flash是一種用於創建多媒體和互動內容的軟體,具有向量圖形、時間軸動畫、互動性和多媒體處理能力等特點。儘管曾經非常流行,但隨著新技術的崛起,Flash逐漸被淘汰,並且在2020年停止了官方支援。

swf是一種基於向量的Flash動畫檔案格式,被廣泛應用於網頁設計、動畫製作等領域,swf檔案通常也被稱為Flash檔案。一般用FLASH軟體創作並產生SWF檔案格式,也可以透過對應軟體將PDF等類型轉換為SWF格式;swf可以用Flash Player打開,瀏覽器必須安裝Flash Player外掛。設計人員和開發人員可使用它來建立簡報、應用程式和其它允許使用者互動的內容。

Flash曾經是網路多媒體的王者,儘管現在它的使用已經大大減少,但在一些舊網站或特定應用中,我們仍然需要Flash插件,我們將詳細介紹如何在Debian系統中安裝Flash。我們需要明確的是Adobe已於2020年12月31日正式停止對FlashPlayer的支持,因此,我們推薦的Flash版本是開源的PepperFlash,PepperFlash是Google開發的,專為Chrome瀏覽器使用的Flash版本。安裝步驟:1.開啟終端,更新你的套件清單:```sqlsudoapt-getupdat

在瀏覽器中觀看影片的話如果沒有flash就沒法啟動,很多小伙伴就都遇到了flash未啟動的情況而導致了麻煩,今天就給大家帶來了詳細的解決方法一起看看吧。 edge瀏覽器flash未啟用:1、進入瀏覽器點選右上角的三個點,選擇「設定」。 2、點選左側的「高級」。 3.在右側「網站設定」中找到「使用adobeflashplayer」。 4、將其開關打開即可正常啟用。

很多的朋友最近瀏覽影片的時候都遇到了問題,明明已經開啟flash但是還是無法使用,那麼這是怎麼回事呢?下面就帶了解決方法來解決大家。 edge瀏覽器flash無法使用:1.進入瀏覽器首頁點擊右上角三個點選擇「更多工具」。 2、在新視窗選擇「使用Internetexplorer開啟」。 3.在ie網頁中點選右上角的齒輪。 4、開啟「Internet選項」。 5、選擇“高級”,在“加速的圖形”中勾選“使用軟體呈現而不使用GPU呈現”即可。

flash插件對電腦沒有影響;安裝flash是為了用戶可以瀏覽器上播放swf文件,曾經是電腦必備的插件,對內存的佔用也並不大,但是現在flash已經被淘汰了,很多網站已經開始在用h5了,而且win10系統自備了flash插件。

flash被屏蔽的解決辦法:1、開啟瀏覽器,並點選網址一行右邊的【紅色圖示】;2、點選【管理】,進入flash管理頁面;3、點選禁止網站運行flash右邊的【開啟按鈕】即可。

很多小夥伴下載了swf格式的文件,但卻無法打開,需要轉換為mp4格式的文件。今天小編教大家用格式工廠轉換為mp4格式,非常的方便快捷,具體的教學下面一起來看看吧。將swf格式轉換為MP4格式方法1、先下載視訊轉換器,2、下載安裝後進入軟體,選擇左邊“視訊轉換”然後點擊“新增檔案”,2、緊接著在“輸出格式”中選擇“輸出格式”和“輸出品質”,3、再之後點擊右側“轉換”功能,推薦使用“極速模式”,能夠提速30%,4、視訊轉換後,可以點擊右側“打開資料夾”就能跳轉對應資料夾。
