javascript - DOM 中的动态 Unicode 生成

标签 javascript dom unicode

我有一个函数链接到我正在处理的 JavaScript 库的方法。基本上采用罗马化的韩语并将其转换为特定的 Unicode 序列,然后将其重新插入到 DOM 中。它生成的结果字符串是正确的,但重新插入到 DOM 中似乎不正确...

例如:如果我的 DOM 中有以下内容:

<ko>hangug-eo</ko>

该函数旨在相应地转换它,替换 hangug-eo&#54620;&#44397;&#50612;在浏览器上显示:

한국어<ko> 内标签...

在DOM中进行字符串设置的函数如下:

function (){
    var z=document.getElementsByTagName('ko');
    for(x=z.length;x--;){
        z[x].childNodes[0].data=kimchi.go(z[x].childNodes[0].data);
    }
}

然而,似乎所有这一切似乎只是将 &# Unicode 实体直接放入 DOM 而没有将其转换为它们各自的字符等价物......所以我所看到的是 &#54620;&#44397;&#50612;

谁能指出我可能做错了什么?

kimchi.go()是最终提供 Unicoded 字符串的函数...

最佳答案

您始终可以直接使用 textContent 设置文本,而无需使用 HTML 实体:

z[x].textContent = '한국어';

但是如果您需要使用 HTML 实体,只需使用 innerHTML 代替

z[x].innerHTML = kimchi.go(z[x].childNodes[0].data);

您可以在下面的示例中看到后者。

https://jsfiddle.net/nmL3to8w/1/

关于javascript - DOM 中的动态 Unicode 生成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30611366/

相关文章:

javascript - 变换数组不考虑 null 返回

javascript - 根据数字数组 : Another version (Not duplicate! 对字符串数组进行排序!)

c# - 如何在 C# 中渲染 Zalgo 文本

javascript - 在 DOM 中访问 textNode.style

javascript - 来自 DOM chrome 扩展的 JS 变量

unicode - Google 计算器中的特殊字符

html - 元标记中未显示 Unicode

javascript - 我需要手动设置 WaveMaker LiveForm 的数据输出吗?

javascript - 如何使用 nextjs 将静态网站部署到 AWS S3

javascript - Element.getClientRects() 何时返回多个对象的集合?