innerHTML outerHTML innerText textContent的区别

在网上看了很多博文介绍他们之间的区别,大部分都说FF中innerText不能使用,但经过自己试验,是可以用的,所以自己把各种情况总结了一下。

首先是innerHTML,这个就不用多说了,返回的是标签内部所有的内容,包括标签和文本,还有空格

举两个栗子,对比一下空格导致的输出区别

<div id="main">1
	<span>123</span>
	<p>222</p>
	<div class="test">456
	</div>
</div>

这里去除id为main的标签中的innerHTML,结果如上图,可以看到标签之间的空格也输出了。

<div id="main">1<span>123</span><p>222</p><div class="test">456</div></div>

假如代码是这样的,结果就是下边这样

那么outerHTML是什么呢?其实就是包含了目标标签,结果是这样

好了,下边就来说一下innerText和textContent的区别。

innerText(兼容所有浏览器 这里ff和chrome都是最新)

<div id="main">1
	<div>123</div><p>222</p><p class="test">456</p>
	<span>123</span>    <span>222</span>            <span class="test">456</span>
</div>

浏览器:FireFox浏览器:chrome

左边是页面显示,右边是控制台输出的innerText,可以看到,窗口的内容和控制台输出基本是一样的,标签之间的空格也被输出。

不过浏览器之间还是有区别的,chrome中的第一个p标签的上方相比firefox中少了一个空行。

ie9ie8

IE9中的输出和FF中是一样的,而IE8及以下版本只有换行的效果,看到这里就醉醉得了吧。

textContent(ie8及以下不能使用 最新的ff和chrome都可使用)

textContent相对innerText就要简单很多,它没有考虑标签之间的关系,相较于纯粹的输出文本,它只是将代码中文本之间的空格给输出了。

还是同样的代码

<div id="main">1
	<div>123</div><p>222</p><p class="test">456</p>
	<span>123</span>  <span>222</span>           <span class="test">456</span>
</div>

FF:

chrome:

ie9及以上:

对于textContent,浏览器之间就没什么区别了。只是ie上版本问题需要考虑。

时间: 2024-08-27 02:52:13

innerHTML outerHTML innerText textContent的区别的相关文章

innerHTML/outerHTML; innerText/outerText; textContent

innerHTML v.s. outerHTML Element.innerHTML Reference: https://developer.mozilla.org/en-US/docs/Web/API/Element/innerHTML Functionality Get serialized HTML code describing its descendants. Set : Remove all the children, parse the content string and as

innerHTML,outerHTML,innerText,outerText区别以及insertAdjacentHTML()方法

在需要给文档插入大量的新的HTML标记的情况下,通过多次DOM操作先创建节点再指定它们之间的关系会非常麻烦而且效率不高,相对而言插入标记的方法会更加简单,速度也更快. 插入标记中有这四个属性innerHtml,outerHTML,innerText,outerText. 这四个属性都有获取状态和设置状态. 我们先来看一小段代码 <div><p>我是div的子元素</p></div> *在这里我们要先获取这个div,我用divnode代替.在chrome浏览器

innerHTML outerHTML innerText value 区别

定义 innerHTML: 属性设置或返回表格行的开始和结束标签之间的 HTML.(也就数说,用innerHTML的元素必须是标签对的形式,也就是input啥都输不出来) outerHTML: 设置或获取对象及其内容的 HTML 形式.(标签对,input输出本身) innerText: 设置或获取位于对象起始和结束标签内的文本.(标签对,input啥也输不出来) value 这个用的地方比较多,这里仅以input中的value为例.就是input的值.(标签对,输出undefined) 代码

(转)innerHTML、innerText和outerHTML、outerText的区别

原文:http://walsh.iteye.com/blog/261966 innerHTML.innerText和outerHTML.outerText的区别          博客分类: CSS/HTML HTML 1.区别描述如下: innerHTML 设置或获取位于对象起始和结束标签内的 HTML outerHTML 设置或获取对象及其内容的 HTML 形式 innerText 设置或获取位于对象起始和结束标签内的文本 outerText 设置(包括标签)或获取(不包括标签)对象的文本

innerHTML&amp;innerHTML与innerText的区别&amp;outerHTML&amp;innerHTML与html的区别

innerHTML innerHTML 属性设置或返回表格行的开始和结束标签之间的 HTML. 语法:HTMLElementObject.innerHTML=text 所有主要浏览器都支持 innerHTML 属性 innerHTML在JS是双向功能:获取对象的内容或向对象插入内容: innerHTML 属性用于设置或返回指定标签之间的 HTML 内容. 语法 Object.innerHTML = "HTML";// 设置 var html = Object.innerHTML;//

DOM中的outerHTML,innerHTML,outerText,innerText的区别

--转自http://blog.163.com/yw_0721/blog/static/7164579720102932157759/ 简单的说innerHTML和outerHTML.innerText与outerText的不同之处在于: 1).innerHTML与outerHTML在设置对象的内容时包含的HTML会被解析,而innerText与outerText则不会. 2).在设置时,innerHTML与innerText仅设置标签内的文本,而outerHTML与outerText设置包括标

innerHTML,innertext,textContent区别

1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8"> 5 <title></title> 6 <style> 7 .demo{ 8 visibility: hidden; 9 } 10 .test{ 11 display: none; 12 } 13 </style> 14 </head> 15 <body

innerHTML与innerText区别

document 对象中有innerHTML和innerText 两个属性, 这两个属性都是获取document对象的文本内容的,这两个属性间有哪些区别呢?通过几个例子来看一下. 示例1 [html] view plain copy <html> <head><title>innerHTML</title></head> <body> <p id="p1">hello world </p>

[转]被玩坏的innerHTML、innerText、textContent和value属性

一.前言 由于innerText并非W3C标准属性,因此我们无法在FireFox中使用它,一般情况下我们可以使用textContent来代替,但它两者是否就能完全等同呢?在坑爹的表单元素(如input.textarea等)中表现是否依旧诡异呢?文本将记录一些实验结果,避免日后被玩坏. 二.innerHTML 由于innerText和textContent均为对innerHTML内容作不同的处理而成,因此我们需要先明确innerHTML属性的特点. 赋值操作:先对值内容进行模式匹配,然后把处理后的