如何在多个父movieclips的层次结构中获取flash中self(movieclip)的url路径?

如何在多个父movieclips的层次结构中获取flash中self(movieclip)的url路径?,flash,actionscript,Flash,Actionscript,假设我正在从另一台服务器上另一个movieclip中的远程url加载一个movieclip 此movieclip现在需要在与其自身相同的服务器上加载另一个子电影剪辑 它如何获取自己的url而不是其父容器的url来加载此子容器?因为如果它引用“child.swf”,它将是相对于第一个服务器的超级父容器的,不是吗?因此,如果只能得到父对象的url,则无法正确加载子对象。在ActionScript 3中,每个剪辑都有一个包含大量加载对象信息的对象。特别是,有一个属性为您提供加载的SWF本身的URL。此

假设我正在从另一台服务器上另一个movieclip中的远程url加载一个movieclip

此movieclip现在需要在与其自身相同的服务器上加载另一个子电影剪辑


它如何获取自己的url而不是其父容器的url来加载此子容器?因为如果它引用“child.swf”,它将是相对于第一个服务器的超级父容器的,不是吗?因此,如果只能得到父对象的url,则无法正确加载子对象。

在ActionScript 3中,每个剪辑都有一个包含大量加载对象信息的对象。特别是,有一个属性为您提供加载的SWF本身的URL。此外,该属性将为您提供父SWF的URL。如有必要,您甚至可以使用以下方法爬上装载机树:

var info:LoaderInfo = loaderInfo;
while(info.loader) { 
    trace(info.loaderURL);
    info = info.loader.loaderInfo;
}
// now info contains the topmost loaderInfo.
您可能需要执行一些字符串拼接以获得不带文件名的路径,例如:

var url:String = loaderInfo.url;
url = url.substring(0, url.lastIndexOf("/")+1);