原生js中innerText和textContent的兼容性处理

<div id="box">hello world</div>

兼容性:
1、innerText:chrome、新版firefox、IE9+、旧版IE;
2、textContent :chrome、新版firefox、旧版firefox、IE9+。
设置元素内容:
1、当设置不含标签内容的时候应该使用innerText,效率高;
2、innerHTML解析含标签内容。

// 写一个兼容性处理函数   兼容性处理在一些库中已经处理 比如jQuery
// var div = document.getElementsByTagName('div');
// // console.dir(div);
// // console.log(div[0].innerHTML);
// // console.log(div[0].innerText);
// // console.log(div[0].textContent);
// console.log(getInnerText(div[0]));
// 兼容性处理第一种方式:
// function getInnerText(ele) {
// 	if (ele.innerText === undefined) {
// 		return ele.textContent;
// 	} else {
// 		return ele.innerText;
// 	}
// }

var box = document.getElementById('box');
console.log(box.a);  // undefined
console.log(box.id);  // box
console.log(typeof box.a); // undefined
console.log(typeof box.id);   // string  能找到这个属性
console.log(getInnerText(box)); // hello world
// 兼容性处理第二种方式:
function getInnerText(element) {
	if (typeof element.innerText === 'string' ) {
		return element.innerText;
	} else {
		return element.textContent;
	}
}		
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值