检测文件是否存在

      Flash 2004-7-28 16:18
翻译:veteran 作者:不详
有时候用脚本来检查一个文件是否存在是十分有必要的,例如:当你想预先一个一个的载入一些个JPG的图片,如果有一个图片是不存在的,可能会造成预载的暂停,你可以在载入之前检测一下文件是否存在。这样可以很快的跳到下一个文件,你可以用onLoad这个事件处理函数的success参数来判断,但是问题是他对影片剪辑是不起作用的 你可以用下面的这个方法来判断:
这个例子是检测swf文件是否存在,如果存在就把他导入到一个影片剪辑中:
-------------------------------------------------
fileExists=new LoadVars();
fileExists._parent=this;
fileExists.onLoad=function(success)
{
//success is true if the file exists, false if it doesnt
if(success)
{
//the file exists
var nm=this._parent.createEmptyMovieClip("swfHolder",1); //so create a movieclip
nm.loadMovie("myfile.swf"); //and load our .swf file into it
}
}
fileExists.load("myfile.swf") //initiate the test

-------------------------------------------------------
以上的代码可以用于任何的文件类型,包括FLASH不支持的载入的文件类型,你或许认为以上的代码可能导致两次导入文件,我的回答是NO 当你在浏览器中运行的时候,如果正在判断文件的类型,onLoad事件在文件被下载到缓存中以前是不会被激活的,LoadVars对象对目标文件也不会有任何地反应。当下次开始载入文件并且显示(swf images text)或者播放(sound)的时候,文件会立即从缓存中加载
如果你的flash电影是在本地运行的,你不必担心载入时间的问题,因为被载入的文件几乎是同步的。


*****************************************************************************************
标签集:TAGS:
回复Comments() 点击Count()

回复Comments

{commentauthor}
{commentauthor}
{commenttime}
{commentnum}
{commentcontent}
作者:
{commentrecontent}