TextArea 的 htmlText 属性的 HTML 元素上的单击事件

Posted

技术标签:

【中文标题】TextArea 的 htmlText 属性的 HTML 元素上的单击事件【英文标题】:Click event on HTML Element of htmlText Property of TextArea 【发布时间】:2017-08-13 10:35:10 【问题描述】:

我在 TextArea 对象的 htmlText 属性中创建了多个锚标记。每当用户单击任何一个锚标记时,我都希望调度该事件。

示例代码:

myTextArea.htmlText = "<a href=\"somelink1\">somelabel1</a><br/><a href=\"somelink2\">somelabel2</a>";

【问题讨论】:

【参考方案1】:

.htmlText 不是MovieClip 的属性,而是TextField

var t:TextField = new TextField();
t.htmlText = "<a href=\"event:my event text\">somelabel1</a>";
this.addChild(t);
t.addEventListener(TextEvent.LINK, onLinkClicked);

function onLinkClicked(e:TextEvent):void 
    trace("Event text:", e.text);

您可以在给定的页面上阅读更多信息。

【讨论】:

我的错,你是对的,我们使用的是 TextArea 而不是 TextField,并且正如我在问题中提到的,我们在一个字符串中有多个链接。但是上面你写的例子只有一个锚标签。我不是 Actionscript 的专家,只需要更新一些东西。您是否有任何适用于同一文本区域的多个锚标记的示例代码? 这个适用于多个标签。我删除了部分文字以获得更清晰的答案。你的问题在哪里?如果您在文本中没有看到“somelabel2”,请确保将multiline 属性设置为true 哦,请参阅textField 属性。 TextArea 不是 TextField 但它在自身内部包装了 TexField 实例,所以你应该有类似 textArea.textField.addEventListener(...) 我有这样的代码myTextArea.htmlText = "&lt;a href=\"somelink1\"&gt;somelabel1&lt;/a&gt;&lt;br/&gt;&lt;a href=\"somelink2\"&gt;somelabel2&lt;/a&gt;"; 是的,现在您需要将侦听器添加到文本字段。如果您想要更详细的答案更新您的问题,请添加更多详细信息。你到底在工作中尝试了什么?

以上是关于TextArea 的 htmlText 属性的 HTML 元素上的单击事件的主要内容,如果未能解决你的问题,请参考以下文章

ActionScript 3 在Flex 4中增加Spark TextArea上的htmlText

mt-5 h 在顺风 css 中对 textarea 不起作用

jQueryjQuery HTMLtext()html()attr()prop ()添加删除元素不同方法创建元素获取并设置 CSS 类尺寸

ActionScript 3 关闭htmlText标记函数 - 如果你补间htmlText就很有用

如何在图像周围包装一些文字?

带有 htmlText 的 Flash CS4 <b> 标记