为了账号安全,请及时绑定邮箱和手机立即绑定

innerHTML和innerText怎么区分?

innerHTML和innerText怎么区分?

损失函数 2016-07-08 15:07:43
查看完整描述

2 回答

已采纳
?
blovetu

TA贡献319条经验 获得超234个赞

<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)">inerHTML内容</a>

共同点:innerHTML和innerText都会把元素内内容替换掉。
不同点:
1,innerHTML: 
  也就是从对象的起始位置到终止位置的全部内容,包括Html标签。 

  上例中的test.innerHTML的值也就是“<span style="color:red">test1</span> 
test2 ”。 
2,innerText: 
  从起始位置到终止位置的内容, 但它去除Html标签 

  上例中的text.innerTest的值也就是“test1 test2”, 其中span标签去除了。 

值得注意的是,innerHTML是符合W3C标准的属性,而innerText只适用于IE浏览器,因此,尽可能地去使用innerHTML,而少用innerText,如果要输出不含HTML标签的内容,可以使用innerHTML取得包含HTML标签的内容后,再用正则表达式去除HTML标签。

查看完整回答
反对 回复 2016-07-08
?
刚毅87

TA贡献345条经验 获得超309个赞

innerHTML可以向文档中输入标签,而 innerText 只能输入文字,例子如下:

<!doctype html>
<html lang="en">
<head>
	<meta charset="UTF-8" />
	<title>Document</title>
	<style type="text/css">
		#div1,#div2{
			width: 200px;
			height: 200px;
			border: 1px solid red;
		}
	</style>
</head>
<body>
	<div id="div1"></div>
	<div id="div2"></div>
</body>
<script>
	var div1 = document.getElementById('div1');
	var div2 = document.getElementById('div2');
	div1.innerHTML = 'div<p>p 标签</p>';
	div2.innerText = 'div<p>p 标签</p>';
</script>
</html>

望采纳!

查看完整回答
反对 回复 2016-07-08
  • 2 回答
  • 0 关注
  • 1816 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信