innerHTML、innerText和outerHTML、outerText的区别

1、区别描述如下:

  • innerHTML 设置或获取位于对象起始和结束标签内的 HTML
  • outerHTML 设置或获取对象及其内容的 HTML 形式
  • innerText 设置或获取位于对象起始和结束标签内的文本
  • outerText 设置(包括标签)或获取(不包括标签)对象的文本

      innerText和outerText在获取时是相同效果,但在设置时,innerText仅设置标签内的文本,而outerText设置包括标签在内的文本。

2、示例代码

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
 <HEAD>
  <TITLE> innerHTML、innerText和outerHTML、outerText的区别 </TITLE>
  <script type="text/javascript">
	//.innerHTML
	function innerHTMLDemo(){
		test_id1.innerHTML="<i><u>设置或获取位于对象起始和结束标签内的HTML.</u></i>";
	}
	//.innetText
	function innerTextDemo(){
		test_id2.innerText="<i><u>设置或获取位于对象起始和结束标签内的文本.</u></i>";
	}
	//.outerHTML
	function outerHTMLDemo(){
		test_id3.outerHTML="<font size=9pt color=red><i><u>设置或获取位于对象及其内容的HTML形式.</u></i></font>"
	}
	//.outerText
	function outerTextDemo(){
		test_id4.outerText="<br><i><u>设置(包括标签)或获取(不包括标签)对象的文本.</u></i>";
	}
  </script>
 </HEAD>

 <BODY>
  <ul>
	<li id="test_id1" onclick="innerHTMLDemo()">innerHTML效果.</li>
	<li id="test_id2" onclick="innerTextDemo()">innerText效果.</li>
	<li id="test_id3" onclick="outerHTMLDemo()">outerHTML效果.</li>
	<li id="test_id4" onclick="outerTextDemo()">outerText效果.</li>
  </ul>
 </BODY>
</HTML>

 
3、不同之处: 
   简单的说innerHTML和outerHTML、innerText与outerText的不同之处在于:
  1)、innerHTML与outerHTML在设置对象的内容时包含的HTML会被解析,而innerText与outerText则不会。
  2)、在设置时,innerHTML与innerText仅设置标签内的文本,而outerHTML与outerText设置包括标签在内的文本。
    对于一个id为"testdiv"的div来说,outerHTML、innerHTML以及innerTEXT三者的区别可以通过下图展示出来:
innerHTML、innerText和outerHTML、outerText的区别

相关推荐