小技: ![CDATA 内 URLの自動リンク

XMLから ![CDATA内のテキストを FLASHのテキストフィールドに読み込む際、HTMLの使用を可能(textfield.html = true;)にしてタグを指定しても、URLはリンクされないので、リンクされるようにするフォーマット用関数を作りました。

URLの後は改行するのが必須条件ですが、何かの際にもしかしたら役に立つかもしれません。読み込まれるテキストを引数に指定して、setFormat関数を実行するだけで、あらゆる状況に適用できます。

var txt = "読み込みたいテキスト http://www.atziluth.jp/"
  setFormat(txt)
  function setFormat(txt) {
   var url = new Array();
   var num = new Array();
   var index = new Array();
   var end = new Array();
   var len = new Array();
   var searchword = "http://";
   var swlen = searchword.length;
   var urlcolor="0xEE8800" //URLのフォント色
   content.textbox.text = txt.toString();
   //content:MovieClip | textbox:TextField
   url = txt.toString().split(searchword);
   num = url.length-1;
   for (i=1; i<=num; i++) {
    index[i] = txt.toString().indexOf(searchword, index[i-1]+swlen);
    urltemp = new Array();
    urltemp = url[i].toString().split("\n");
    len[i] = urltemp[0].length+swlen;
    end[i] = int(index[i])+int(len[i]);
    url[i] = searchword+url[i].toString().substr(0, len[i]-swlen);
    url_fmt = new TextFormat();
    url_fmt.color = urlcolor;
    url_fmt.url = url[i];
    url_fmt.target = "_blank";
    content.textbox.setNewTextFormat(index[i], end[i], url_fmt);
   }
  }

ActionScript 3.0 Pocket Reference: The Quick-Answer Guide for ActionScript Users (Pocket Reference (O'Reilly))

ActionScript 3.0 Pocket Reference: The Quick-Answer Guide for ActionScript Users (Pocket Reference (O'Reilly))