gpt4 book ai didi

javascript - 如何动态设置emoji unicode

转载 作者:行者123 更新时间:2023-12-04 10:21:21 24 4
gpt4 key购买 nike

这是我的 html 代码的样子:

<html>
<style>
body {
font-size: 18px;
}
</style>
<body>
<span id="tiger" style='font-size:100px;'>&#128161;</span>
<button id="btn">SET TIGER</button>

<script>
document.getElementById('btn').addEventListener('click', function (e) {
document.getElementById('tiger').innerText = `&#129409;`;
});
</script>
</body>
</html>

但它不起作用,只显示 &#129409;单击按钮时而不是表情符号。为什么会这样,如何动态设置表情符号?

最佳答案

HTML 转义
HTML 转义如 "💡"在解析源文档时由 HTML 解析器解码。
要设置文本节点的内容,请使用 JavaScript 字符串 - 技术上以 UTF-16 编码。
JavaScript 字符串
如果您知道 UTF-16 中字符的十六进制表示,则可以使用转义字符串设置文本节点内容,例如

element.textContent = "\ud83d\udca1"; // not recommended.
如果您知道十六进制或十进制的 Unicode 值,您可以使用静态字符串 fromCodePoint方法:
 element.textContent = String.fromCodePoint( 0x1f4a1) // or
element.textContent = String.fromCodePoint( 128161 )
另一种选择是在 JavaScript 中使用带有花括号的 unicode 转义来转义 6 十六进制字符代码:
 element.textContent = '\u{01f4a1}'; // still not recommended
但是,我推荐的方法是在保存时以 UTF-8 编码 HTML 文件,并在代码中使用标准字符串值设置文本内容:
 element.textContent = '💡'
当然,对 Unicode 字体的有限代码编辑器支持使这有点困难。

指定字符编码
正如评论中提到的,HTML 文件中使用的字符编码可以在使用非 ASCII 字符之前在 head 部分的顶部指定。放置 meta tag
 <meta charset="utf-8">
开盘后立即 <html>标签将实现这一点。
虽然 HTML5 中的默认编码是“utf-8”,但旧移动设备上的浏览器可能仍需要使用上述元标记。见 this question三年前的更多细节。

关于javascript - 如何动态设置emoji unicode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60829313/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com