设置标签中的文本内容,如果使用innerText属性,那么谷歌,火狐,IE8都支持
设置标签中的文本内容,如果使用textContext属性,那么谷歌,火狐支持,IE8不支持
如果这个属性在浏览器中不支持,那么这个属性的类型是undefined
判断这个属性的类型是不是undefined,就知道浏览器是否支持
typeof一般是检测的是基本数据类型,instanceof主要检测的是引用类型!
/**兼容代码
* 设置任意标签中的文本内容
* @param element
* @param text
*/
function setInnerText(element,text) {
//判断浏览器是否支持这个属性
if(typeof element.textContent=="undefined"){
element.innerText=text;
}else{
element.textContent=text;
}
}
/**
* 获取任意标签中的文本内容
* @param element
* @returns {string|string|onclick.title}
*/
function getInnerText(element) {
if(typeof element.textContent=="undefined"){
return element.innerText;
}else{
return element.textContent;
}
}
innerText,textContent,innerHTML之间的区别,
1.如果使用innerText设置文本内容,是没有标签效果的
2.innerHTML可以设置文本内容,也可在标签中设置新的HTML标签内容,是具有标签效果的
3.innerText可以获取标签中的文本内容,但是标签中如果还有标签,那么最里面的标签的文本内容也能获取.—获取不到标签的,文本可以获取
4.innerHTML才是真正的获取标签中间的所有内容,包含标签
5.textContent和innerText设置和获取效果一样