firefoxのinnerText,inners HTML,textContent,
1975 ワード
innerTextとinnerHTMLはIEで正常に動作しますが、innerTextはFireFoxではできません.なぜですか?この二つの特性はDHTML規格ではないからです.なぜinnerHTMLはFFの中でできますか?これはたくさん使うと事実上の基準になりますので、FFは多くの事実上の基準をサポートしています.しかし、残念ながらinnerTextはサポートされていません.どうしますか?競争をした後、FFのjavascript consoneを調べて、最終的にネット上で次のコードを見つけました.
解決方法二:
document.all?oTable.rows[i].cels[2].inners Text:oTable.rows[i].cels[2].textContentまたは
length=oTable.rows[2].cels[2].innerText?oTable.rows[2].cels[2].innerText:oTable.rows[2].cels[2]
解決方法3:
<script type=「text/javascript」>var lBrowser={}lBrowser.agt=navigator.userAgent.torowerCase();lBrowser.isW 3 C=document.getElement ById?true:falselBrowser.isIE=((lBrowser.agt.indexOf)!=-1)&((lBrowser.agt.indexOf)=-1)&lBrowser.isNS 6=lBrowser.isW 3 C&&&(navigator.appName==「Netscape」)lBrowser.isOpera=lBrowser.agt.indexOf(「opera」)!=-1;lBrowser.isGecko=lBrowser.agt.indexOf!=-1;lBrowser.ieTrueBody=function() return(document.com mpatMode&document.com mpatMode!=「BackComppat」)?document.documentElement:document.body;
//Firefox下のDOMオブジェクトにinnerText属性if(lBrowser.isNS 6){/firefox innext defineを追加する. HTMLEMEnt.prototype.uuudfineGetter_(「innerText」) function(){ return this.textContent; } ); HTMLEMEnt.prototype.uuudfinese Setter_(「innerText」、 function(s Text){ this.textContent=s Text; } ); }
alert(lBrowser.isNS 6)
if(navigator.appName.indexOf("Explorer") > -1){ document.getElementById('element').innerText = "my text";} else{ document.getElementById('element').textContent = "my text";}
実験は可能です.解決方法二:
document.all?oTable.rows[i].cels[2].inners Text:oTable.rows[i].cels[2].textContentまたは
length=oTable.rows[2].cels[2].innerText?oTable.rows[2].cels[2].innerText:oTable.rows[2].cels[2]
解決方法3:
<script type=「text/javascript」>var lBrowser={}lBrowser.agt=navigator.userAgent.torowerCase();lBrowser.isW 3 C=document.getElement ById?true:falselBrowser.isIE=((lBrowser.agt.indexOf)!=-1)&((lBrowser.agt.indexOf)=-1)&lBrowser.isNS 6=lBrowser.isW 3 C&&&(navigator.appName==「Netscape」)lBrowser.isOpera=lBrowser.agt.indexOf(「opera」)!=-1;lBrowser.isGecko=lBrowser.agt.indexOf!=-1;lBrowser.ieTrueBody=function() return(document.com mpatMode&document.com mpatMode!=「BackComppat」)?document.documentElement:document.body;
//Firefox下のDOMオブジェクトにinnerText属性if(lBrowser.isNS 6){/firefox innext defineを追加する. HTMLEMEnt.prototype.uuudfineGetter_(「innerText」) function(){ return this.textContent; } ); HTMLEMEnt.prototype.uuudfinese Setter_(「innerText」、 function(s Text){ this.textContent=s Text; } ); }
alert(lBrowser.isNS 6)