相关疑难解决方法(0)

nodeValue vs innerHTML和textContent.怎么选择?

我使用普通的js来改变标签元素的内部文本,我不确定我应该使用innerHTML或nodeValue或textContent.我不需要创建新节点或更改HTML元素或任何东西 - 只需替换文本.这是代码的示例:

var myLabel = document.getElementById("#someLabel");
myLabel.innerHTML = "Some new label text!"; // this works

myLabel.firstChild.nodeValue = "Some new label text!"; // this also works.

myLabel.textContent = "Some new label text!"; // this also works.
Run Code Online (Sandbox Code Playgroud)

我查看了jQuery源代码,它使用了nodeValue一次,但是innerHTML和textContent几次.然后我发现这个jsperf测试表明firstChild.nodeValue明显更快.至少这就是我所说的意思.

如果firstChild.nodeValue快得多,那捕获的是什么?它没有得到广泛支持吗?还有其他问题吗?

javascript dom innerhtml nodevalue

119
推荐指数
4
解决办法
7万
查看次数

标签 统计

dom ×1

innerhtml ×1

javascript ×1

nodevalue ×1