JavaScript中innerHTML、outerHTML、innerText、outerText的用法与区别认识

2017百度前端技术学院(js任务一)


一、JS中innerHTMLouterHTMLinnerTextouterTextvalue的区别与联系?


在JS中很容易将以上几者记错弄混,在网上找了解释也很抽象,如以下:

innerHTML 设置或获取位于对象起始和结束标签内的 HTML 

innerText 设置或获取位于对象起始和结束标签内的文本 

outerHTML 设置或获取对象及其内容的HTML形式 

outerText 设置(包括标签)或获取(不包括标签)对象的文本 

 

但是!有了示例就可以看的很明显了!再见

<div id="mydiv">  
      <span style="color:red">span1</span> span2  
</div>  


var innerHTML = document.getElementById("mydiv").innerHTML;  
var innerText = document.getElementById("mydiv").innerText; //Firefox不支持   
var outerHTML = document.getElementById("mydiv").outerHTML;  
var outerText = document.getElementById("mydiv").outerText; //Firefox不支持   
console.info(innerHTML);  //输出<span style="color:red">span1</span> span2  
console.info(innerText);  //输出span1 span2  
console.info(outerHTML);  //输出<div id="mydiv"><span style="color:red">span1</span>span2</div>  
console.info(outerText);  //输出span1 span2  

有一点要注意:  innerHTML是符合W3C标准的属性,而innerText 对Firefox是不支持的 因此,尽可能地去使用innerHTML,

而少用innerText,如果要输出不含HTML标签的内容,可以使用innerHTML取得包含HTML标签的内容后,再用正则表达式去除HTML标签。


哦,对了,还有个valuevalue就是元素的属性值啊不要多想。

<html>
<head>
<script type="text/JavaScript">
function show(obj){
alert(obj.value);//输出value
}
</script>
</head>
<body>
<div οnclick="showD(this)">innerText</div>
<input type="button" value="value"οnclick="show(this)"></input>
</body>
</html>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值