用swf播放器调用flv的路径问题

来源:百度知道 编辑:UC知道 时间:2024/06/27 07:13:57
http://hengdaogudao.w7.dh52.com/ReadNews.asp?NewsID=540
我在自己的网页上插入了一个swf格式的播放器为abc.swf,可以播放flv格式的文件,我的flv文件名为bbb.flv,在电脑上,两个文件是放在同一个文件夹下面的,所以我在电脑上编辑abc.swf文件里flv路径的时候直接输入bbb.flv,测试,播放正常,发到网站上两个文件都放在网页的uploadfile文件夹下,在我的这个网页上插入abc.swf,保存后测试,只能打开abc.swf,不能播放bbb.flv了!
求助!我该怎么办?

首先
“在我的这个网页上插入abc.swf,”
插入swf的网页是不是也和swf在同一目录下
如果不是,则swf调用abc.flv的时候其实调用的是网页的地址+abc.flv而无法连接到flv

你可以通过以下两个方法解决问题
1:使用绝对路径,也就是写上完整的flv地址

2: swf中主动获取swf所在的域,解析出地址后套在flv地址上连接,这个比较麻烦,需要在swf帧上写代码

var rooturl_String = new String(_root._url); //获取到swf的完整地址,其中包含了swf所在的域
var rooturl_Array = rooturl_String.split("/");//分离解析地址,得到前面的域地址
var url_l=rooturl_Array.length;
var url_x="";//新建域地址变量,用来存储解析后的域地址
for(i=0;i<url_l-1;i++){
url_x=url_x+rooturl_Array[i]+"/";//解析域地址
}
//下面就可以使用url_x变量来访问和swf同一目录下的flv了。比如
ns.play(url_x+"abc.flv");