![]() |
Remote Shared Library Loader
由 episome 发起于2008-08-06 17:04:50,最后修改于2008-08-06 17:04:50。0条跟帖。
actionscript
as3
从站点A的a.swf 载入站点B的b.swf的时候,跨域不能调用b中的一些类,以下方法可以解决。
package aslee.display { /** * Remote Shared Library Loader * @author episome(at)gmail.com */ import flash.display.Loader; import flash.net.*; import flash.events.Event; import flash.system.LoaderContext; import flash.utils.ByteArray; public class RSLLoader extends Loader{ private var stream:URLStream; private var __context:LoaderContext; public function RSLLoader() { stream = new URLStream; stream.addEventListener(Event.COMPLETE, streamCompleteHandler); } private function streamCompleteHandler(e:Event):void { var bytes:ByteArray = new ByteArray(); stream.removeEventListener(Event.COMPLETE, streamCompleteHandler); stream.readBytes(bytes, 0, stream.bytesAvailable); stream.close(); loadBytes(bytes, __context); } override public function load(request:URLRequest, context:LoaderContext = null):void { __context = context; stream.load(request); } } } |