聊天的时候,或留言或其他情况下。做文本的htmlText输出的时候,我们需要将字符串编码成html样的形式。才能渲染出具有html应用的效果。可是,当遇到html样式不需要转换的时候,也就是原文输出的时候。这个时候就得对html样式就行再编码。下边贴出一种转换方式。
原文地址:http://stackoverflow.com/questions/2342453/encode-html-in-flex-actionscript
var text:TextField = new TextField(); text.autoSize = TextFieldAutoSize.LEFT; text.selectable = false; //纯as下可以跳转,flex下却不可以 text.htmlText = "<a href = 'http://hao123.com'> 千百度 </a>"; text.htmlText += "<a href = 'event:http://vini123.com'> 非你网 </a>"; text.htmlText += htmlEscape("<a href = 'event:http://vini123.com'> 非你网 </a>"); text.addEventListener(TextEvent.LINK , textLinkHandler); addChild(text) text.x = 10; text.y = 10; function textLinkHandler(e:TextEvent):void { var url:String = e.text; navigateToURL(new URLRequest(url) , "_blank"); } function htmlEscape(str:String):String { return XML( new XMLNode( XMLNodeType.TEXT_NODE, str ) ).toXMLString(); }