七彩空间-七彩课堂[FLASH动画教程]
获得swf文件的总数随机加载swf
       楼主应该是指在静态WEB空间里实现用FLASH判断某个目录里的swf文件个数吧?
最简单的办法就是用一个txt文件记录当前目录里的swf个数……以及swf的文件名……FLASH只要读取该txt文件里的信息就行了……
如果不想放置那个TXT(因为每次增加swf需要改那个txt里的记录),那么就需要用到扫描文件夹了(实现起来比较麻烦,除了用有规律的数字来命名SWF文件之外,还要注意以下几点)……
在2004里实现比较简单……在MX里就需要等待一段时间进行判断……比如根据loadMovie()的swf大小是否为零来得出该swf是否存在……
另外一个更先进的办法就是用loadvar对象……因为loadvar有onload事件判断……
但是不管loadMovie或者loadvars方法……都是将swf下载下来了……如果考虑到带宽或者外部swf文件很多的情况下……可以考虑为每个SWF保存一个同名的txt。比如文件夹内有个SWF名字叫5.swf,那么在文件夹里放置一个5.txt。5.txt内无任何内容……作用就是用来让loadvars对象尝试加载……复制内容到剪贴板代码:
myload = new LoadVars();
myload.onLoad = function(succeed) {
if (succeed) {
trace("ok");
} else {
trace("no");
}
};
myload.load("5.txt", myload);事实上直接myload.load("5.swf", myload);也行的……不过会将5.swf下载下来了……
以上方法结合一个for循环,比如文件夹里最多可能有100个swf,就指定100个loadvars对象进行判断……
写了这么多……也不知道自己在说些什么了……
总之……最简单的办法就是保存一个info.txt,在txt里用一个变量记录当前所有swf的文件名(如:info=test1.swf|test2.swf|test3.swf……)
FLASH只要读取这个变量就OK了……
比如:
myload = new LoadVars();
myload.onLoad = function(succeed) {
if (succeed) {
_root.info=this.info.split("|");//用数组保存所有的swf文件名。
_root.time=_root.info.length;//获得swf文件的总数。
_root.loadMovie(_root.info[random(_root.time)]);//随机加载swf。
} else {
trace("no");
}
};
myload.load("info.txt", myload);
 
信息推荐
资讯中心 | 电子商务 | 搜索营销 | 设计学院 | 中医养生 | 养生保健 | 节日祝福 | 民俗文化 | 奇闻趣事
建站知识 | 人世百态 | 网站导航 | 传统节日 | 搜索热点 | 星座运势 | 趣闻轶事 | 祝福的话 | 短信大全
© 2023 QicaiSpace.Com