在FireFox中并不支持
document.getElementById("div1").innerText 这句脚本,怎么让它也支持这句脚本呢?
从网络拆抄了两种方法:
if(document.all){
document.getElementById('element').innerText = "my text";
} else{
document.getElementById('element').textContent = "my text";
}
document.getElementById('element').innerText = "my text";
} else{
document.getElementById('element').textContent = "my text";
}
这种方法比较简单明了。但有一点区别是textContent会包含不应有的HTML代码。
另一种方法是:
try{
HTMLElement.prototype.__defineGetter__
(
"innerText",
function ()
{
var anyString = "";
var childS = this.childNodes;
for(var i=0; i<childS.length; i++)
{
if(childS[i].nodeType==1)
anyString += childS[i].tagName=="BR" ? '"n' : childS[i].innerText;
else if(childS[i].nodeType==3)
anyString += childS[i].nodeValue;
}
return anyString;
}
);
}
catch(e){}
HTMLElement.prototype.__defineGetter__
(
"innerText",
function ()
{
var anyString = "";
var childS = this.childNodes;
for(var i=0; i<childS.length; i++)
{
if(childS[i].nodeType==1)
anyString += childS[i].tagName=="BR" ? '"n' : childS[i].innerText;
else if(childS[i].nodeType==3)
anyString += childS[i].nodeValue;
}
return anyString;
}
);
}
catch(e){}
这种方法我没有试过,你们不防可以试看看。问题总是的解决办法的,只要你有心。