`

firefox 中 innerText,innerHTML,textContent,

阅读更多

innerText和innerHTML在IE中能正常工作,但是innerText在FireFox中却不行.
为什么呢?因为这两个属性都不是DHTML标准。
那为什么innerHTML在FF中可以呢?因为这个东西用得多了就成了事实的标准,而FF支持很多事实上的标准。
但是很可惜不支持innerText。
如何做呢?经过一翻较量,和查看FF的javascript console最终网上找到如下代码:

if(navigator.appName.indexOf("Explorer") > -1){    document.getElementById('element').innerText = "my text";} else{    document.getElementById('element').textContent = "my text";}

试验可行。。。

解决方法二:

document.all?oTable.rows[i].cells[2].innerText:oTable.rows[i].cells[2].textContent或者

length=oTable.rows[2].cells[2].innerText?oTable.rows[2].cells[2].innerText:oTable.rows[2].cells[2].textContent

解决方法三:

<script type="text/javascript">
var lBrowser = {};
lBrowser.agt = navigator.userAgent.toLowerCase();
lBrowser.isW3C = document.getElementById ? true:false;
lBrowser.isIE = ((lBrowser.agt.indexOf("msie") != -1) && (lBrowser.agt.indexOf("opera") == -1) && (lBrowser.agt.indexOf("omniweb") == -1));
lBrowser.isNS6 = lBrowser.isW3C && (navigator.appName=="Netscape") ;
lBrowser.isOpera = lBrowser.agt.indexOf("opera") != -1;
lBrowser.isGecko = lBrowser.agt.indexOf("gecko") != -1;
lBrowser.ieTrueBody =function (){
  return (document.compatMode && document.compatMode!="BackCompat")? document.documentElement : document.body;
};

//为Firefox下的DOM对象增加innerText属性
if(lBrowser.isNS6){ //firefox innerText define
 HTMLElement.prototype.__defineGetter__( "innerText",
 function(){
 return this.textContent;
 }
 );
 HTMLElement.prototype.__defineSetter__( "innerText",
 function(sText){
 this.textContent=sText;
 }
 );
}

alert(lBrowser.isNS6);
</script>

 
分享到:
评论

相关推荐

    innerText innerHTML的用法以及注意事项 [推荐]

    在IE浏览器中,innerText是可用的,但在其他遵循W3C标准的浏览器(如Firefox、Chrome等)中,可能需要使用textContent属性来达到类似效果。以下是一个使用innerText的例子: ```javascript var DT = document....

    Javascript的IE和Firefox(火狐)兼容性

    ### Javascript的IE与Firefox(火狐)兼容性解决方案 在Web开发过程中,浏览器兼容性问题一直是开发者们关注的重点之一。由于不同的浏览器对于Web标准的支持程度存在差异,这导致了同样的代码在不同浏览器中的表现...

    javascript textContent与innerText的异同分析

    首先,`innerText` 属性是Internet Explorer特有的,而`textContent` 属性则在Firefox和其他遵循W3C标准的浏览器中被广泛支持。当一些开发者从IE转向其他浏览器时,常常遇到不兼容的问题,因为他们在Firefox中尝试...

    innerhtml用法 innertext用法 以及innerHTML与innertext的区别

    需要注意的是,`innerText`仅在IE浏览器中被支持,而在其他遵循W3C标准的浏览器(如Firefox, Chrome, Safari, Opera等)中,推荐使用`textContent`来实现相同的功能。为了实现跨浏览器兼容性,可以使用`innerText`和...

    javascript在IE和Firefox中兼容性问题

    IE使用`innerText`属性来读取和修改元素的文本内容,而Firefox则使用`textContent`。此外,当文本内容包含HTML标签时,使用`innerHTML`可能在Firefox中导致意外的行为,应使用更安全的文本节点创建和插入方法。 2....

    textContent在Firefox下与innerText等效的属性

    但在Firefox不支持该属性,好在FF下的DOM对象支持textContent,该属性与innerText等效。 演示实例: ”TestObj”&gt;Hi,I’m &lt;strong&gt;cnlei&lt;/strong&gt;.Welcome to my homepage:&lt;a&gt;http://www.cnlei.com&lt;/a&gt;.&lt;/p&gt; ...

    Javascript在IE和FireFox中的兼容处理

    - IE使用`innerText`,Firefox使用`textContent`。可以同时设置和获取这两个属性以确保兼容。 12. **样式相关数值大小问题** - Firefox返回的像素值通常不含单位,IE则包含。在处理时需要考虑这一点,例如使用`...

    js在IE与firefox的差异集锦

    在使用innerText时,Firefox会保留字符串中的所有空格,而textContent则不会。如果不需要保留空格,可以通过textContent来实现innerText的功能。如果字符串中不包含HTML标签,也可以使用innerHTML来替代innerText。 ...

    IE与FireFox的js和css几处不同点

    - Firefox不支持`innerText`,但提供`textContent`,它会保留所有空白字符。如果不需要处理HTML,可以使用`innerHTML`代替。 2. **禁止选取内容**: - IE使用JavaScript的`onselectstart`事件处理函数,如`obj....

    IE和Firefox差异参考大全

    在互联网的早期,IE(Internet Explorer)和Firefox(火狐浏览器)是两个主要的Web浏览平台,它们在处理CSS(层叠样式表)和JavaScript方面存在显著的差异。这些差异对于开发者来说至关重要,因为它们影响了网站在...

    innerHTML属性,outerHTML属性,textContent属性,innerText属性区别详解

    然而,innerText是非标准属性,在Firefox中不被支持,应尽量避免在跨浏览器的项目中使用。 这四个属性之间的关键区别在于它们如何处理HTML结构、CSS样式以及文本的格式化。在处理元素内容时,选择合适的属性取决于...

    firefox和IE系列的相关区别整理 以备后用

    - 在IE中,`innerText`用于获取或设置元素的文本内容,但Firefox不支持`innerText`,它使用`textContent`,但`textContent`会保留所有空白字符。 - 如果只需要文本内容且不关心空白,`innerHTML`在IE和Firefox中都...

    火狐与IE浏览器兼容代码

    本文将详细介绍如何在Internet Explorer(简称IE)和Mozilla Firefox(简称Firefox)之间实现`innerText`和`innerHTML`属性的兼容性处理,并提供一种解决方案使得这两个属性能够在不同浏览器中表现一致。 #### 一、...

    IE和Firefox的Javascript兼容性总结[定义].pdf

    - `innerHTML`和`innerText`:IE支持`innerText`,Firefox支持`textContent`,使用时需要考虑兼容性。 解决这些问题通常需要编写条件语句,使用库(如jQuery)或适配器模式来封装差异。理解这些兼容性问题并采取...

    火狐和ie的区别

    在处理文本内容方面,IE支持`innerText`属性,允许获取或设置元素的纯文本内容,但Firefox不支持`innerText`,而是使用`textContent`。然而,`textContent`会保留多余的空格,如果不需要这些空格,可以考虑使用`...

    ajax中的IE和火狐的区别

    本文将基于提供的文档摘要,深入探讨Internet Explorer(IE)与Mozilla Firefox(火狐)这两种主流浏览器在处理DOM操作、事件绑定等方面存在的差异,并提出相应的解决方案。 #### 一、InnerText与InnerHTML - **...

    innerHtml用法精解

    - **Firefox和Opera**:要求元素不在DOM树中时进行插入。 为了实现跨浏览器兼容性,可以使用如下方法: ```javascript var setInnerHTML = function (el, htmlCode) { var ua = navigator.userAgent.toLowerCase...

Global site tag (gtag.js) - Google Analytics