让innerText在firefox火狐和IE浏览器都能用的写法

  IE中的获取文本方法innerText在firefox中不支持

  firefox改成了textContent方法/属性

  并且在Firefox中文本中间的空白自符被无情的替换没了

  使用起来异常不方便

  现在好了,用Javascript重新定义了innerText方法

  使得在Firefox中也可以使用innerText方法

  并且此方法解决了firefox中空白字符的问题

  使用方法:

  将下面的脚本放在页面内

  不管ie还是firefox都可以使用obj.innerText提取文本了

  

复制代码 代码如下:

  <script language=”javascript”>

  function isIE(){ //ie?

  if (window.navigator.userAgent.toLowerCase().indexOf(“msie”)>=1)

  return true;

  else

  return false;

  }

  if(!isIE()){ //firefox innerText define

  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].textContent;

  else if(childS[i].nodeType==3)

  anyString += childS[i].nodeValue;

  }

  return anyString;

  }

  );

  HTMLElement.prototype.__defineSetter__( “innerText”,

  function(sText){

  this.textContent=sText;

  }

  );

  }

  </script>