知道何时单击文本字段中的超链接?

时间:2009-06-04 16:20:58

标签: flash actionscript textfield hyperlink

在Flash中,当用户单击TextField中的超链接时是否有任何事件?

4 个答案:

答案 0 :(得分:3)

有:TextEvent.LINK,但它仅适用于前缀为“event:”的链接。

tf.htmlText = "<a href=\"event:http://www.example.com\">Example</a><br>";

http://livedocs.adobe.com/flash/9.0/ActionScriptLangRefV3/flash/text/TextField.html

如果你不使用“event:”语法提取外部数据,你可以轻松编写一个快速的RegExp来添加它。

答案 1 :(得分:1)

似乎有可能,请查看reference

答案 2 :(得分:1)

可以使用TextField事件“link” - 当用户单击TextField中的超链接时调度它。

Adobe site中提供了一个很好的例子。

答案 3 :(得分:1)

以下代码用“event:”前缀替换hrefs(如上面的geraldalewis所建议):

public static function hrefEvents(s:String):String {
    var hrefRegex:RegExp = /href="/gm;
    var output:String = s.replace(hrefRegex, "href=\"event:");
    var dupe:RegExp = /event:event:/gm;
    output = output.replace(dupe, "event:");
    return output;
}

请注意,我确保撤消已经包含“event:”的href的替换。 (我本可以在正则表达式中使用负向前瞻断言,但我很懒。)