有时候需要查询纯文本形式的元素内容,或者在文档中插入纯文本。标准的方法是用Node的textContent属性来实现:
var para = document.getElementsByTagName('p')[0];
var text = para.textContent;
para.textContent = 'Hello World!';
textContent属性在除了IE的所有当前的浏览器中都支持。在IE中可以使用Element的innerText属性来代替。
/*
一个参数,返回元素的textContent或innerText
两个参数,用value参数的值设置元素的textContent或innerText
*/
function textContent(element, value){
var content = element.textContent; //检测textContent是否定义
if(value === undefined){ // 没传递value,因此返回当前文本
if(content !== undefined)
return content;
else return element.innerText;
} else{ // 传递了value,因此设置文本
if(content !== undefined)
return content;
else return element.innerText;
}
}
TextContent属性就是将指定元素的所有后代Text节点简单地串联在一起。