对于支持 DOM3 的浏览器,您可以使用textContent:
document.getElementById("mylink").textContent = new_text;
这适用于 FF(在 3 中测试)、Opera(在 9.6 中测试)和 Chrome(在 1 中测试),但不适用于 MSIE7(尚未在 MSIE8 中测试)
添加示例
它不漂亮,但应该可以跨浏览器工作(在 FF3、Opera9.6、Crome1 和 MSIE7 中的 win 中测试)
function replaceTextContent(element,text) {
if (typeof element ==="string") element = document.getElementById(element);
if (!element||element.nodeType!==1) return;
if ("textContent" in element) {
element.textContent = text; //Standard, DOM3
} else if ("innerText" in element) {
element.innerText = text; //Proprietary, Micosoft
} else {
//Older standard, even supported by Microsoft
while (element.childNodes.length) element.removeChild(element.lastChild);
element.appendChild(document.createTextNode(text));
}
}
(更新:增加了对微软专有的 innerText 的支持)