innerText兼容问题处理

时间:2020-12-07 15:15:37

IE、Safari、Opera和Chrome支持innerText属性。低版本的火狐浏览器不支持,但支持作用类似的textContent属性。textContent是DOM3级规定的一个属性,而且也得到了safari、opera和Chrome的支持。为了确保跨浏览器兼容,有必要想下面这样通过函数来检测可以使用哪个属性:

var content = document.getElementById("content");
//获取文本内容
function getInnerText(elem) {
return (typeof elem.textContent == "string") ? elem.textContent : elem.innerText
}
console.log(getInnerText(content));
//设置文本内容
function setInnerText(elem,text) {
return(typeof elem.textContent == "string") ? elem.textContent = text : elem.innerText = text
}
setInnerText(content,"hello Huijie")