
Код AS3:
package
{
import flash.display.Sprite;
import flash.events.Event;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.TextEvent;
import flash.net.navigateToURL;
import flash.net.URLLoader;
import flash.net.URLLoaderDataFormat;
import flash.net.URLRequest;
import flash.text.TextField;
/* * * * * * * * * *
* *
* @author wolsh *
* *
\* * * * * * * * * */
public class Main extends Sprite
{
private var _txt:TextField;
private var _xml:XML;
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
stage.align = StageAlign.TOP_LEFT;
stage.scaleMode = StageScaleMode.NO_SCALE;
// Загружаем XML
var loader:URLLoader = new URLLoader();
loader.dataFormat = URLLoaderDataFormat.TEXT;
loader.addEventListener(Event.COMPLETE, onXMLLoaded);
loader.load(new URLRequest("books.xml"));
}
private function onXMLLoaded(event:Event):void
{
// Получаем XML из загруженных данных
_xml = XML(event.target.data);
// получаем XMLList - список книг
var books:XMLList = _xml..book;
// Создаем текстовое поле для вывода
_txt = new TextField();
addChild(_txt);
_txt.multiline = true;
_txt.textColor = 0x000000;
_txt.x = 400, _txt.y = 50;
_txt.height = 300;
// Подписываемся на событие нажатия на ссылки
_txt.addEventListener(TextEvent.LINK, onLink);
// Формируем html-строку для вывода
var bookString:String = "";
for (var i:uint = 0; i < books.length(); i++)
{
var url:String = books[i].bookurl.text();
var name:String = books[i].bookname.text();
bookString += "<font face='Tahoma, Geneva, sans-serif' size='+2'><a href='event:" + url + "'>" + name + "</a></font><br>";
}
_txt.htmlText = bookString;
}
private function onLink(event:TextEvent):void
{
// переходим на переданный адрес URL
navigateToURL(new URLRequest(event.text));
}
}
}
вот мой проект - та же проблема
