`
zhouyrt
  • 浏览: 1173880 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

各浏览器中innerHTML实现差异(1)

 
阅读更多

如下代码

<p id="tit"></p>
<script>
    try {
        document.getElementById('tit').innerHTML = "<div>trtr</div>";
    } catch(e) {
        //IE<9 ERROR
        alert(e)
    }
</script>

 

获取页面中id为tit的元素,为其innerHTML赋值。IE6/7/8中抛异常,其它浏览器正常。

 

但规范指出,段落P是不能包含P自身及其它块级元素的。IE6/7/8的处理洽洽是对的,其它浏览器则不对。

 

把innerHTML的值换成“<p>trtr</p>”,IE6/7/8仍然报错。

把innerHTML的值换成行内元素如“<span>trtr</span>”,IE6/7/8则不报错,正常执行。

 

这个问题是TX的发现的。

 

相关:

IE6/7/8/9中使用innerHTML清空元素,其子元素也被清空

分享到:
评论

相关推荐

    js跨浏览器是正对目前各浏览器标准不同

    不同的浏览器在实现DOM API时可能存在细微差异,例如`innerHTML`属性或`addEventListener`方法。统一使用DOM Level 2和3标准可以减少这种问题。 4. **事件处理**: 事件处理在不同浏览器间也存在差异,如事件冒泡...

    用html5 js实现点击一个按钮达到浏览器全屏效果

    - 全屏API在不同浏览器中的显示差异:具体介绍不同浏览器实现全屏API的差异。 - jQuery封装的全屏插件:简化全屏功能的实现。 - HTML5全屏API与网络钓鱼:介绍全屏API可能面临的安全风险。 通过上述知识点,开发者...

    动态创建样式表在各浏览器中的差异测试代码

    总之,动态创建样式表是前端开发中的重要技能,理解和掌握不同浏览器的实现差异有助于写出更健壮的代码。通过适当的技术检测和适配策略,我们可以确保我们的样式更改能在各种浏览器环境下正常工作。

    IE6/7/8中使用innerHTML清空元素,其子元素也被清空

    本文将深入探讨一个特定的问题,即在Internet Explorer 6、7和8(以下简称IE6/7/8)浏览器中使用`innerHTML`属性清空元素时,其子元素也会被一并清空的特性。这个现象在其他现代浏览器中并不常见,因此了解这一问题...

    浅析JavaScript中浏览器的兼容问题

    innerText在IE8之前的浏览器中得到支持,而innerHTML在老版本的Firefox中得到支持。新版本的浏览器则同时支持这两种方式。为了确保跨浏览器兼容性,可以使用以下代码进行能力检测,选择合适的方法来获取或设置文本...

    IE、FF、Chrome浏览器中的JS差异介绍

    通过上述几个方面的介绍,我们可以看到,在不同浏览器中,JavaScript的表现和功能实现存在不少差异。随着浏览器的发展和标准化进程的加快,这些差异正在逐渐减少,但目前仍需开发者在编写代码时进行相应的兼容性处理...

    浏览器兼容

    虽然大多数基础语法在各浏览器间相似,但实现细节和API差异可能导致问题。例如,标准事件绑定使用`addEventListener`,而IE使用`attachEvent`。此外,事件处理中的`event`对象获取方式、事件冒泡机制、DOM操作(如`...

    innerHTML动态添加html代码和脚本兼容多个浏览器

    通过编写像`set_innerHTML`这样的函数,可以有效地处理不同浏览器对innerHTML的解析差异,并确保JavaScript脚本在所有支持的浏览器中正确执行。同时,为了防止`document.write`破坏页面,我们可以重定义这个函数,使...

    跨浏览器开发经验总结

    - `element.outerText`、`element.innerText`、`element.outerHTML`、`element.innerHTML`:这些属性主要用于读取或修改元素的内容或结构,在IE中具有特殊的支持。 2. **Table操作** - `moveRow(iSource, ...

    判断是不是ie8支持所有浏览器

    Internet Explorer(IE)作为一款曾经占据市场主导地位的浏览器,在其不同版本间存在较大的差异,尤其是与现代浏览器如Chrome、Firefox等相比,在对Web标准的支持上存在诸多不足。因此,在早期Web开发中,能够准确...

    ajax实例,兼容各个主流浏览器

    这个实例是为了实现跨浏览器的Ajax局部刷新功能,确保在所有主流浏览器中都能正常工作。以下将详细介绍Ajax的工作原理以及如何实现跨浏览器兼容性。 ### 1. Ajax的工作原理 Ajax的核心是XMLHttpRequest对象,它...

    js在IE与firefox的差异集锦

    特别是在使用JavaScript编程语言时,IE和Firefox两个浏览器在很多方面的实现都存在差异。本文将详细介绍这些差异并提供相应的解决方法。 1. 关于innerText属性的支持: Firefox浏览器不支持innerText属性,而支持...

    innerHTML-outerHTML-innerTEXT.txt

    - 在某些情况下,浏览器可能会自动修正或调整通过 `innerHTML` 设置的 HTML,因此实际渲染的内容可能与预期有所不同。 ### 实际应用示例 假设我们有一个简单的 HTML 页面,包含一个按钮和一个 `div` 元素: ```...

    JavaScript万年历——兼容多浏览器

    由于JavaScript在不同的浏览器中可能存在差异,因此实现一个兼容多浏览器的万年历功能需要考虑浏览器的兼容性问题,确保在IE、Chrome、Firefox、Safari等主流浏览器上都能正常运行。 万年历的设计通常包括以下几个...

    ie和ff浏览器的兼容

    特别是Internet Explorer(简称IE)与Firefox(简称FF)这两种浏览器之间存在的差异,经常导致网页显示效果不一致的问题。本文将根据提供的部分文档内容,深入探讨IE与FF在处理某些元素时的不同之处,并提供相应的...

    IE中关于使用innerHTML加入HTML代码的问题

    当你尝试在IE中执行上述代码时,浏览器会报错,但错误信息可能不会明确指出问题出在innerHTML。为了解决这个问题,IE提供了innerText属性作为替代。innerText允许设置或获取元素的纯文本内容,而不是HTML。因此,...

    js插件设置innerHTML时在IE8下提示“未知运行时错误”解决方法

    然而,在特定的浏览器环境下,这种操作可能会引发问题,比如在IE8浏览器中,某些情况下会遇到设置innerHTML时提示“未知运行时错误”的情况。这个问题虽然在现代浏览器中不常见,但在一些老版本的浏览器或者某些特定...

    IE和Firefox差异参考大全

    了解并掌握这些差异是开发跨浏览器Web应用的关键,尤其是在需要兼容旧版本浏览器的项目中。开发者通常会使用条件注释、库如jQuery或工具如Autoprefixer来解决这些问题,以确保在不同的浏览器环境中都能正常运行。...

    浏览器兼容性问题大汇总

    这些只是众多浏览器兼容性问题的一部分,解决它们需要深入理解各浏览器之间的差异,并灵活运用各种技巧和解决方案。持续关注 W3C 规范更新、使用工具如 Autoprefixer 和 Babel 进行自动化转换,以及测试工具如 ...

Global site tag (gtag.js) - Google Analytics