欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

js怎么判斷flash swf文件是否加載完畢

 更新時(shí)間:2014年08月14日 17:31:42   投稿:whsnow  
因?yàn)槲乙恢辈恢涝撛趺磁袛鄐wf文件是否加載完畢,于是想用js來(lái)實(shí)現(xiàn)這個(gè)功能,需要的朋友可以參考下

js怎么判斷flash是否加載完畢了呢?

我們?cè)趺丛趂lash加載完畢之時(shí),回調(diào)一個(gè)我們?cè)O(shè)定的js函數(shù)?

這個(gè)問(wèn)題,一直困擾了我很久,直到今天,請(qǐng)教了一個(gè)非常牛B的人物之后,突然來(lái)了感覺(jué)!

呵呵,也許,這個(gè)問(wèn)題在你們看來(lái)不是問(wèn)題,不過(guò)對(duì)于我來(lái)說(shuō),確實(shí)是個(gè)問(wèn)題,因?yàn)槲乙恢辈恢涝撛趺磁袛鄐wf文件是否加載完畢了?

從前都是只知道img.onload等等。

好了,言歸正傳,我們到底該怎樣判斷一個(gè)flash是否加載完了呢?

沒(méi)錯(cuò),就是輪詢,然后判斷flash的某個(gè)方法是否能正常運(yùn)行?

示例如下(偽代碼):

(function () { 
var flash = 網(wǎng)頁(yè)上某個(gè)flash對(duì)象。 

var interval = setInterval(function () { 
try { 
if(flash.IsPlaying()) { //輪詢flash的某個(gè)方法即可 
callBack && callBack.call(flash, args); //回調(diào)函數(shù) 
clearInterval(interval); 
} 
} catch (ex) { 

} 
}, 1000); 

var callBack = function () { 
alert('loaded'); 
} 
})();

//具體運(yùn)用時(shí),flash放進(jìn)setInterval或者setTimeout的函數(shù)閉包中時(shí),可能會(huì)由于JavaScript單線程問(wèn)題,導(dǎo)致flash不能調(diào)用IsPlaying等f(wàn)lash player函數(shù)或者調(diào)用結(jié)果不對(duì)等狀況,這里有個(gè)臨時(shí)的解決辦法,我們可以讀取在輪詢函數(shù)中讀取flash的TotalFrames屬性,讀取得到,我們就可以認(rèn)為flash已經(jīng)完全加載到頁(yè)面中了?。?!

經(jīng)測(cè)試,確實(shí)可行,不過(guò)可能會(huì)有1—2秒的時(shí)間延遲。

/////////////有什么不對(duì)的地方,歡迎勘誤?。。。。。。。?!//////////////

/*后面附上可控制Flash Player的js方法列表*/

Play() ---------------------------------------- 播放動(dòng)畫(huà)
StopPlay()------------------------------------停止動(dòng)畫(huà)
IsPlaying()----------------------------------- 動(dòng)畫(huà)是否正在播放
GotoFrame(frame_number)---------------- 跳轉(zhuǎn)到某幀
TotalFrames()------------------------------- 獲取動(dòng)畫(huà)總幀數(shù)
CurrentFrame()------------------------------回傳當(dāng)前動(dòng)畫(huà)所在幀數(shù)-1
Rewind()-------------------------------------使動(dòng)畫(huà)返回第一幀
SetZoomRect(left,top,right,buttom)-------放大指定區(qū)域
Zoom(percent)------------------------------改變動(dòng)畫(huà)大小
Pan(x_position,y_position,unit)------------使動(dòng)畫(huà)在x,y方向上平移
PercentLoaded()----------------------------返回動(dòng)畫(huà)被載入的百分比
LoadMovie(level_number,path)----------- 加載動(dòng)畫(huà)
TGotoFrame(movie_clip,frame_number)- movie_clip跳轉(zhuǎn)到指定幀數(shù)
TGotoLabel(movie_clip,label_name)------ movie_clip跳轉(zhuǎn)到指定標(biāo)簽
TCurrentFrame(movie_clip)--------------- 回傳movie_clip當(dāng)前幀-1
TCurrentLabel(movie_clip)-----------------回傳movie_clip當(dāng)前標(biāo)簽
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指定標(biāo)簽上的action
TGetProperty(movie_clip,property)--------獲取movie_clip的指定屬性
TSetProperty(movie_clip,property,number)-設(shè)置movie_clip的指定屬性

相關(guān)文章

  • JavaScript省市聯(lián)動(dòng)實(shí)現(xiàn)代碼

    JavaScript省市聯(lián)動(dòng)實(shí)現(xiàn)代碼

    這篇文章主要介紹了JavaScript省市聯(lián)動(dòng)實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2014-02-02
  • JavaScript實(shí)現(xiàn)PC端橫向輪播圖

    JavaScript實(shí)現(xiàn)PC端橫向輪播圖

    這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)PC端橫向輪播圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • 輸入密碼檢測(cè)大寫是否鎖定js實(shí)現(xiàn)代碼

    輸入密碼檢測(cè)大寫是否鎖定js實(shí)現(xiàn)代碼

    網(wǎng)站登錄為了更好的用戶體驗(yàn)都會(huì)在輸入密碼的時(shí)候檢測(cè)是否開(kāi)啟大寫,這樣有助于提醒用戶,需要學(xué)習(xí)的朋友可以參考下
    2012-12-12
  • 由?JavaScript?的?with?引發(fā)的探索

    由?JavaScript?的?with?引發(fā)的探索

    這篇文章主要介紹了由?JavaScript?的?with?引發(fā)的探索,js?的?with?是為對(duì)象訪問(wèn)提供命名空間式的訪問(wèn)方式,with?創(chuàng)建一個(gè)對(duì)象的命名空間,在這個(gè)命名空間內(nèi)你可以直接訪問(wèn)對(duì)象的屬性,而不需要通過(guò)對(duì)象來(lái)訪問(wèn),下面一起來(lái)了解更多詳細(xì)內(nèi)容吧
    2022-01-01
  • JS使用Dijkstra算法求解最短路徑

    JS使用Dijkstra算法求解最短路徑

    這篇文章主要為大家詳細(xì)介紹了JS使用Dijkstra算法求解最短路徑,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • 百度小程序之間的頁(yè)面通信過(guò)程詳解

    百度小程序之間的頁(yè)面通信過(guò)程詳解

    這篇文章主要介紹了百度小程序之間的頁(yè)面通信,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-07-07
  • Jupyter Notebook運(yùn)行JavaScript的方法

    Jupyter Notebook運(yùn)行JavaScript的方法

    Jupyter Notebook是一塊所見(jiàn)即所得的畫(huà)布,通過(guò)在瀏覽器上編輯代碼,讓開(kāi)發(fā)人員實(shí)現(xiàn)展示與快速迭代的利器,本文主要介紹了Jupyter Notebook運(yùn)行JavaScript的方法,感興趣的可以了解一下
    2021-05-05
  • 解決WebStorm?2022.3.x?無(wú)法識(shí)別?Element?UI?2.15.11?新版本中的?el-xxx?標(biāo)簽問(wèn)題(兩種解決方案)

    解決WebStorm?2022.3.x?無(wú)法識(shí)別?Element?UI?2.15.11?新版本中的?el-

    這篇文章主要介紹了解決?WebStorm?2022.3.x?無(wú)法識(shí)別?Element?UI?2.15.11?新版本中的?el-xxx?標(biāo)簽問(wèn)題,本文給大家分享兩種解決方案,需要的朋友可以參考下
    2023-01-01
  • js實(shí)現(xiàn)獲取焦點(diǎn)后光標(biāo)在字符串后

    js實(shí)現(xiàn)獲取焦點(diǎn)后光標(biāo)在字符串后

    這篇文章主要介紹了js實(shí)現(xiàn)獲取焦點(diǎn)后光標(biāo)在字符串后,原理就是獲得焦點(diǎn)后重新把自己復(fù)制粘帖一下,喜歡的朋友可以看看
    2014-09-09
  • javascript 不讓鼠標(biāo)事件觸發(fā)

    javascript 不讓鼠標(biāo)事件觸發(fā)

    div上加了onclick事件,里面又有超鏈a,點(diǎn)超鏈的時(shí)候能不觸發(fā)div 的事件嗎?
    2007-12-12

最新評(píng)論