当我需要更改span元素中的文本时,我应该使用哪一个,有什么区别:
var spnDetailDisplay=document.getElementById('spnDetailDisplay');
spnDetailDisplay.innerText=sDetail;
或
var spnDetailDisplay=document.getElementById('spnDetailDisplay');
spnDetailDisplay.childNodes[0].nodeValue=sDetail;
发布于 2009-11-19 00:32:50
对于包含文本内容的元素,它们是相同的。有关nodeValue
的信息,请参阅this MDC article。
如果元素没有子元素,只有文本,那么它(通常)有一个子节点,作为
ElemRef.childNodes[0]
访问。在这种情况下,相当于ElemRef.innerText
的W3C web标准是ElemRef.childNodes[0].nodeValue
.
。
发布于 2015-09-02 01:42:19
<script>
和<style>
.
然而,从2016年3月起,所有主要浏览器的版本都支持innerText。
一般来说,它们是相似的,但如果您需要最佳性能,则应该使用nodeValue。
性能测试链接:https://jsperf.com/read-innerhtml-vs-innertext-vs-nodevalue-vs-textcontent/13
https://stackoverflow.com/questions/1760126
复制