动态文本中的内嵌图像

时间:2014-04-12 02:11:00

标签: html css actionscript-3 flash

我正在使用AS3开发聊天应用程序。我是AS和flash的新手。我想在聊天中添加表情符号。因此,当用户键入":p"我想用他的短信中的图像替换它。我只是用图像标签来做到这一点。但是,图像不显示内联。它显示在下一行。

有一种简单的方法吗?

实施例: 目前 - >这是我的聊天 图像在这里

期望的结果 - >这是我的"图像在这里"聊天

示例代码

var abc:String="This is my :p chat";
abc.replace(":p", "<img src='url of the image' height='10' width='10'>"

2 个答案:

答案 0 :(得分:0)

你试过了吗?

img{
  display: inline;
}

我假设你已经知道通过AS3加载样式表了吗?

更新:

这样的事情应该有效:

var style:StyleSheet = new StyleSheet();
style.parseCSS("img{ display: inline; }");

// IMPORTANT: tf is whatever TextField instance you are using
tf.styleSheet = style;
var str:String = "<p>This is my :p chat</p>";
tf.htmlText = str.replace(":p", "<img src='url of the image' height='10' width='10'>");

答案 1 :(得分:0)

试试这个:

var _message = "Good to see u :) how are you";
chatTxt.htmlText = doReplace(_message);
function doReplace(msg):String
{
    var _str = refDocument._baseURL + "/tool/assets/emotion/";
    var _search:Array = [":)",";)"];
    var _replace:Array = ["<img width='20' height='20' src='smile.png'>","<img width='20' height='20' src='wink.png'>"];
    for (var i:int=0; i<_search.length; i++)
    {
        msg = msg.split(_search[i]).join(_replace[i]);
    }
    return msg;
}

确保chatTxt是TLF文本