twemoji没有转换字符串

时间:2015-06-10 13:33:52

标签: javascript

我正在尝试使用twemoji(https://github.com/twitter/twemoji)来转换unicode表情符号字符。

我有一个非常简单的页面:

<html>

<head>
  <meta charset="utf-8">
  <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width">

  <title></title>
  <script src="https://twemoji.maxcdn.com/twemoji.min.js"></script>
</head>

<body>

  <span>
 What a cool string \ud83c\udf88\ud83c\ud83c\udf88\ud83c\ud83c\udf88\ud83c</span>
</body>

</html>

根据运行时的文档

twemoji.parse(document.body)

它应该遍历页面并将所有unicode字符替换为标记。 这不会发生但是如果你把那个字符串直接放到函数中那么

twemoji.parse("What a cool string \ud83c\udf88\ud83c\ud83c\udf88\ud83c\ud83c\udf88\ud83c");

并在Chrome控制台中运行它确实会显示已转换的字符串。

What a cool string <img class="emoji" draggable="false" alt="" src="http://twemoji.maxcdn.com/36x36/1f388.png"><img class="emoji" draggable="false" alt="" src="http://twemoji.maxcdn.com/36x36/1f388.png"><img class="emoji" draggable="false" alt="" src="http://twemoji.maxcdn.com/36x36/1f388.png">

数据来自数据库,并且已使用iOS应用程序输入。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:2)

如果要在html中编写这些字符,则必须使用其他符号:

&#127880; =&gt;?或&#x1f388; =&gt;?

请参阅:http://www.charbase.com/1f388-unicode-balloon

twemoji.parse(document.body)
<script src="https://twemoji.maxcdn.com/twemoji.min.js"></script>
<span>
 What a cool string 	&#127880; &#x1f388;  
</span>