flex swf访问资源的路径问题
来源:互联网 发布:什么软件可以哼歌识曲 编辑:程序博客网 时间:2024/05/21 06:26
在做项目时,经常要将flex写的swf文件嵌入到jsp/html页面中,实践过程中比较头痛的就是路径问题了。
经常会遇到路径配置不对,而导致主swf文件无法加载资源的问题。下面笔者谈谈自己的解决方法:
思路:在swf中我们通常写的是资源的相对路径,但是将swf嵌入到页面后由于页面跳转等原因导致加载
资源时路径不正确,这时候可以在主swf初始化时获取主swf的绝对路径(可以是网络路径)然后将主
swf要访问的资源前加上绝对路径,这时候访问的就是资源的绝对路径了,就不会出现上述问题了。
具体方法:
1、在主应用(mx:Application)的initialize事件(init)中,获取该应用的路径,代码如下:
public var currSwfUrl:String; //在Application中声明的当前swf的路径
private function init():void
{
var swfPath:String = this.parent.stage.loaderInfo.url;//获取当前swf的路径
var swfPathArray:Array = swfPath.split("/");
if (swfPathArray[0] == "file:") { //本地路径
if(swfPathArray.length<=3){
currSwfUrl = swfPathArray[2];
currSwfUrl = currSwfUrl.substring(0,currSwfUrl.lastIndexOf(currSwfUrl.charAt(2)));
}
else{
currSwfUrl = swfPath;
currSwfUrl = currSwfUrl.substring(0,currSwfUrl.lastIndexOf("/"));
}
}else{ //网络路径
currSwfUrl = swfPath;
currSwfUrl = currSwfUrl.substring(0,currSwfUrl.lastIndexOf("/"));
}
currSwfUrl += "/";
}
2、在其他地方可以通过Application.application.currSwfUrl获取到主swf的路径,
然后就可以给资源加上绝对路径了。
- flex swf访问资源的路径问题
- flex, swf 不能访问网络/本地资源
- flex 只有仅限于文件系统的 SWF 文件和可信的本地 SWF 文件可以访问本地资源
- 关于flash/flex的程序跨域访问swf或者图片资源
- flex SWFLoader 访问 SWF 交互 的方法
- 关于静态资源访问的路径问题
- Flex Swf 访问本地文件,本地安全沙箱问题
- flex 的swf访问不到的处理方法
- StyleManager.loadStyleDeclarations加载swf的路径问题
- swf不能访问html的问题
- swf 不能访问本地资源
- tomcat通过虚拟路径访问程序外部资源的问题
- Java中如何访问资源文件的路径问题
- 关于tomcat配置静态资源访问路径的问题
- web服务端访问xml资源文件的路径问题
- 关于flex的swf
- swf不能访问本地资源的一些解决办法
- AS3嵌入swf元件库,如何访问指定的资源
- 对PCA方法的改进
- UVa 10815 - Andy's First Dictionary
- JAVA CAS单点登录(SSO)
- 在 IIS 7 中管理应用程序池
- C语言 笔\面试
- flex swf访问资源的路径问题
- shell脚本中遇到密码中包含#的处理
- 串口通信的经验,422,485,232, ttl/cmos
- Android 屏幕横竖切换事件
- 简单选择排序算法
- C# 文件下载四方法
- Laplacian matrix
- 找到矩阵区域最小数值
- 类的内存对齐(类的sizeof)