获取swf文件所在位置的url

swf的URLRequest对象不能获取相对路径,所有的请求必须为绝对地址,所以有时通过获得swf所在的url来推断其它文件的位置十分有必要。网络上提供了几种在as3获取url地址的方法:
一、
this.stage.loaderInfo.url
var doMain:String = this.stage.loaderInfo.url;
var doMainArray:Array = doMain.split("/");
if (doMainArray[0] == "file:") {
trace("Local debug mode.");
}else{
trace("Web host mode");
}
二、

import flash.external.ExternalInterface;
//Method 1
var urlPath = ExternalInterface.call("window.location.href.toString");
//Method 2
var urlPath = loaderInfo.url;

// Or

var myUrl:String = unescape(LoaderInfo(this.root.loaderInfo).url);
trace("myUrl: "+myUrl);

如果您需要获取运行swf文件的html地址,则可以:

import flash.external.ExternalInterface;
var full:String = ExternalInterface.call("window.location.href.toString");

posted @ 2014-03-05 12:50  sumsung753  阅读(256)  评论(0编辑  收藏  举报