假设最初在客户端swf中发生的所有事情是用户单击swf文本对象中的超链接,因此这会从服务器请求“页面”。作为响应,服务器仅修改客户端浏览器中的现有swf,例如(?)调用它的公共功能,并且可能作为参数传入响应于URL请求而下载的图像或数据文件的名称。关键部分是,最初在SWF中发生的所有事情都是URL“页面”请求。这通常是否完成,如果是,如何。
答案 0 :(得分:2)
单击AS3中的超链接将触发TextEvent.LINK事件,然后您可以收听此事件并在您的函数中继续调用相关服务,然后相关服务将向您发送一个响应,您可以使用该响应更新您的swf数据
查看此处的文档以获取TextEvent类 http://www.adobe.com/livedocs/flash/9.0/ActionScriptLangRefV3/
现在,这完全取决于您的链接是什么,如果它加载XML,那么您可以使用URLLoader类来加载XML数据
private function init():void
{
var tf:TextField = new TextField();
tf.htmlText = "<a href='http://example.com/data.xml'>Update Data</a>";
tf.addEventListener(TextEvent.LINK, clickHandler);
addChild(tf);
}
private function clickHandler(e:TextEvent):void
{
trace(e.type); // link
trace(e.text); // http://example.com/data.xml
var loader:URLLoader = new URLLoader();
loader.addEventListener( Event.COMPLETE , dataLoaded );
loader.load( new URLRequest( e.text ) );
}
private function dataLoaded(event:Event):void
{
trace( event.target.data );// xml content
//from here you can then parse the XML & update your swf
}