js改变嵌入flash的html参数,flash部分改变,网页加载flash后flash的加载目录被改变解决办法...

之前都分享的是createjs的技术,今天就来分享一篇flash的吧,毕竟flash也是我的专长。

做过flash项目的人都知道,你在flash里加载文件写相对目录,但是当你的flash被网页加载的时候,目录就会变成相对于网页的,这个问题直接导致了,要不就是flash要与网页同一目录,不方便集中管理;要不就是flash在放到网页之前就要变成网页上的加载目录,这样的话本地调试就非常麻烦。

不过其实用工具类就可以解决了,这里分享下工具类的代码。

先获取主flash的目录 catalogue = getCatalogue(stage.loaderInfo.url) 保存起来

/**

* 获取根目录地址

* @param source 地址

* @return 目录地址

*

*/

public static function getCatalogue(source:String):String

{

if(!source) return source;

var str:String = source.split("?")[0];

var index:int = str.lastIndexOf("\\");

if(index == -1)

{

index = str.lastIndexOf("/");

}

var contents:String = str.substring(0,index);

return contents;

}

然后每次加载文件的时候目录上都加一个字符来代替这个目录,我是用...来代替

/**

* 地址转换 加上“.../”后会对地址加上目录

* @param source 地址

* @return 转化后的地址

*

*/

public static function sourceTransition(source:String):String

{

return source.replace("...",catalogue);

}

然后我举例加载一个文件

loader.load(new URLRequest(sourceTransition(".../xx.swf")));

这样子,flash的加载目录,永远是以主flash为准,不会被网页加载而改变。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值