我正在尝试将我们拥有的AS2圣诞卡转换为AS3,而我仍然坚持使用CDATA显示XML。基本上HMTL标签仍然可以输出。
这是我的XML :
<?xml version="1.0" encoding="UTF-8"?>
<config>
<data>
<textblock>
<![CDATA[<h1>Seasons Greetings!</h1><p>from everyone at Honda</p>]]>
</textblock>
</data>
</config>
CSS
h1 {
font-size:55;
color:#333333;
}
p {
font-size:25;
color:#333333;
}
和我的AS3 :
import flash.net.URLLoader;
import flash.text.StyleSheet;
var myXML:XML = new XML();
var XML_URL:String = "config.xml";
var myXMLURL:URLRequest = new URLRequest(XML_URL);
var myLoader:URLLoader = new URLLoader(myXMLURL);
myLoader.addEventListener(Event.COMPLETE, xmlLoaded);
function xmlLoaded(event:Event):void
{
myXML = XML(myLoader.data);
trace("Data loaded.");
blocktext.text = myXML.data.textblock;
}
var textStyleSheet:StyleSheet;
function loadCSS():void
{
var loader:URLLoader = new URLLoader();
loader.addEventListener(Event.COMPLETE, onCSSLoadComplete);
loader.load(new URLRequest("config.css"));
}
function onCSSLoadComplete(event:Event):void
{
textStyleSheet = new StyleSheet();
textStyleSheet.parseCSS(event.target.data);
//loadXML();
}
它会输出H1和P html标签,并且不使用样式。
任何帮助表示感谢。
答案 0 :(得分:2)
我认为你可以从
开始blocktext.styleSheet = textStyleSheet;
blocktext.htmlText = myXML.data.textblock.children.toString();