我想在一个段落上给一个单词上色,但是我用TextNode创建了这个段落,然后像某些文本一样显示。
范例:
<!DOCTYPE html>
<html>
<body>
<p>Click the button to create a Text Node.</p>
<button onclick="myFunction()">Try it</button>
<script>
function myFunction() {
var t = document.createTextNode("Hello World <span style=\"color: #BA0000\">error</span> ");
document.body.appendChild(t);
}
</script>
</body>
</html>
您要创建一个元素而不是文本。该textNode是要显示你给的,而不是打造出来传递给它的HTML它的任何文字。因此,您需要在变量中单独创建元素,或使用任何具有类似内容的内容设置父元素的innerHTML <span>
。
尝试创建一个类似于段落标签的元素,然后将其设置为innerhtml,如下所示:
var t = document.createElement('p');
t.innerHTML = "Hello World <span style=\"color:#BA0000\">error</span> ";
这将为您提供所需的带有html的元素,仅包含文本。请参见下面的示例。
<!DOCTYPE html>
<html>
<body>
<p>Click the button to create a Text Node.</p>
<button onclick="myFunction()">Try it</button>
<script>
function myFunction() {
var t = document.createElement('p');
t.innerHTML = "Hello World <span style=\"color:#BA0000\">error</span> ";
document.body.appendChild(t);
}
</script>
</body>
</html>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句