flash 文件是否存在判斷代碼
更新時間:2009年06月16日 23:35:47 作者:
因在制作播放器列表,想判斷一下音樂文件是否存在,于是上網(wǎng)查了一下,大部分代碼為
復(fù)制代碼 代碼如下:
var exist = new LoadVars();
exist.onLoad = function(success) {
if(!success) {
trace("文件不存在");
}
}
exist.load("文件名");
此代碼應(yīng)該說嚴(yán)重誤導(dǎo)我們,onLoad事件指的是把文件下載完后執(zhí)行的代碼。如果只判斷本機文件還可以,因為不用下載,如果是判斷網(wǎng)絡(luò)文件就麻煩了,如果你要判斷網(wǎng)上一部電影,對不起,等下載完這部電影才告訴你是否存在。
于是我想到應(yīng)該只判斷該文件是否存在,只判斷一下它有沒有內(nèi)容,即getBytesTotal(),獲取它總共多少字節(jié),如果當(dāng)前沒有執(zhí)行加載操作或者尚未開始加載操作,此方法將返回 undefined。如果無法確定總字節(jié)數(shù)(例如,如果下載已開始但服務(wù)器尚未傳輸 HTTP Content-Length),此方法也將返回 undefined。于是我們可以這樣判斷文件是否存在:
復(fù)制代碼 代碼如下:
var exist = new LoadVars();
this.createEmptyMovieClip("item_mc", this.getNextHighestDepth());
item_mc.onEnterFrame=function(){
var total =this.target.getBytesTotal();
if(int(total)>101){
//這里沒有使用total==undefined判斷,因為發(fā)現(xiàn)不準(zhǔn),文件不存在時int(total)=101
delete item_mc.onEnterFrame;
trace("文件存在");
trace(int(total));//返回總字節(jié)
}
}
item_mc.target=exist;
exist.load("文件地址");
相關(guān)文章
FlashObject之Flash的檢測和嵌入Javascript腳本
FlashObject之Flash的檢測和嵌入Javascript腳本...2007-03-03Flash兩個上傳示例ASP和PHP(原文件下載,包括后臺程序)
Flash兩個上傳示例ASP和PHP(原文件下載,包括后臺程序)...2006-11-11關(guān)于FLASH與XML交互應(yīng)用中的理解
關(guān)于XML在FLASH中的應(yīng)用,以前寫過幾篇。也收集了幾篇來自網(wǎng)絡(luò)的。不過,都是一些非常簡單而常用的。在這里,我把XML的其他相關(guān)說明總結(jié)一下。有不足之處,希望大家能相互補充。只為了一個共同的目的:共同提高。2008-04-04AS3.0 實例學(xué)習(xí) 熟悉addChild和removeChild在不同的swf之間的運用,以及l(fā)oader的用法
這篇文章通過實例給大家介紹了AS3.0 實例學(xué)習(xí) 熟悉addChild和removeChild在不同的swf之間的運用,以及l(fā)oader的用法,非常不錯,需要的朋友參考下吧2007-12-12