javascript中的innerHTML,innerText,outerHTML的用法及其区别

Posted 风雨后见彩虹

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript中的innerHTML,innerText,outerHTML的用法及其区别相关的知识,希望对你有一定的参考价值。

示例html代码:

<div id="test">
   <span style="color:red">test1</span> test2
</div>

获得id为test的DOM对象,下面就不一一获取了。

var test = document.getElementById(‘test‘);

test.innerHTML

描述:也就是从对象的起始位置到终止位置的全部内容,包括Html标签。

上例中的test.innerHTML的值也就是“<span style="color:red">test1</span> test2 ”

test.innerText

描述:从起始位置到终止位置的内容, 但它去除Html标签 。

上例中的test.innerText的值也就是test1 test2, 其中span标签去除了。

test.outerHTML

描述:除了包含innerHTML的全部内容外, 还包含对象标签本身。

上例中的test.outerHTML的值也就是<div id="test"><span style="color:red">test1</span> test2</div>

完整示例:

<div id="test">
   <span style="color:red">test1</span> test2
</div>

<a href="javascript:alert(test.innerHTML)">innerHTML内容</a>
<a href="javascript:alert(test.innerText)">inerText内容</a>
<a href="javascript:alert(test.outerHTML)">outerHTML内容</a>

结果:

//test.innerHTML结果:<span style="color:red">test1</span> test2
//test.innerText结果:test1 test2
//test.outerHTML结果:<div id="test"><span style="color:red">test1</span> test2</div>

兼容性

innerHTML所有浏览器兼容;innerTextouterHTML虽然主流浏览器,如谷歌,火狐,IE7-IE11,QQ等都已支持(这里提到的谷歌火狐等都是最新浏览器的版本),但是W3C的标准属性就是innerHTML,因此,尽可能地去使用innerHTML,而少用innerTextouterHTML

以上是关于javascript中的innerHTML,innerText,outerHTML的用法及其区别的主要内容,如果未能解决你的问题,请参考以下文章

Xpath 和 innerHTML

页面判断显示值

HTML DOM 属性

如何在不删除之前的 innerHTML 的情况下使用 innerHTML? [复制]

使用 .innerHTML 时 HTML 标签损坏

Javascript 中的 .innerHTML