javascript - 不使用innerText直接将文本添加到innerHTML
问题描述
是否可以在innerHTML
无需使用的情况下添加字符串innerText
?
像这样:
var sentence="<b>hello there</b>";
document.querySelector(".container").innerHTML='<span class="thing"></span>';
document.querySelector(".thing").innerText=sentence;
<!DOCTYPE html>
<html>
<head></head>
<body>
<div class="container"></div>
</body>
</html>
但不必使用
innerText
,也许代码看起来像这样:
var sentence="<b>hello there</b>";
document.querySelector(".container").innerHTML='<span class="thing">'+raw(sentence)+'</span>';
解决方案
我认为您目前的方法没有任何严重问题。如果您想避免重复创建具有特定类的元素,然后必须在附加它后立即再次选择它,您可以考虑创建一个元素而不是 HTML 字符串:
var sentence="<b>hello there</b>";
document.querySelector(".container")
.appendChild(document.createElement('span'))
.textContent = sentence;
<div class="container"></div>
推荐阅读
- html - 如何通过 VBA 从网站的 dd 标签中获取数据
- javascript - 为什么补充 mapbox 地理编码器只允许一次搜索?
- ios - 我们可以将搜索应用于从 json 解析中获取的数组的 tablview
- ios - 弱引用的 Delegates 变为 nil
- flutter - 初始化状态时如何进行 API 调用和加载数据?
- android - 如何以编程方式“按下软键盘按钮”
- android - Android:查询其他用户保存在设备上的联系人
- python-3.x - 使具有许多“ifs”的 Python 代码更高效
- c# - Xaml 使用隐藏属性
- python - 使用一些代码查找 pandas 的连续值