IE其实相对来讲并不是规范的遵循者,错怪firefox了。

2020注:IE看来要退出市场了,这些也逐渐成为历史了。:)

1firefox不支持iframe.document, 而IE支持,所以对firefox使用contentDocument

//firefox and IE is different
        var ddoc = menuIFrame.contentDocument||menuIFrame.document;

2 firefox不支持使用document.parent, 而IE可以。在firefox中直接使用parent.document

//document.parent.document shall not work in firefox!
                    parent.document.all.item("main").src = _this.items[this._index].url;

3 firefox不支持 document.all, 而IE支持, firefox 使用: d.getElementsByTagName("*")

4 光标下划线,如果超链接在firefox中默认有下划线,在windows中没有。

统一使用: TEXT-DECORATION: none;

5 firefox光标显示小手, 需要使用cursor:pointer, 而IE则是cursor:hand或者sursor:pointer都可以。

方案: style="cursor:pointer"

6 ul,li中css不起作用。主要用作tab页设计的那个,问题是css层级,标识符继承无效。 如:.a.b.c, 如果在b和c中有其他的id,则无效。 直接.c可以

7 css "margin:0 auto", div在IE下不对中, 解决方案,把如下放到页面头部。

<!DOCTYPE
html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

8 关于event, firefox不支持window.event, 用如下办法解决兼容问题; firefox不支持srcElement, IE不支持target

document.all(trname).style.display = displayTag;
    eve=arguments.callee.caller.arguments[0] || window.event;
    var srcele = eve.srcElement?eve.srcElement:eve.target;

9关于style.display属性。

style.display="block"中Firefox不好使, 如果同时兼容IE和Firefox, 则需要:

style.display=""

style.display="table-row" <- 注意只是针对table

10 form在IE中的留白

style="margin:0; padding:0;" 加入这个会将留白去掉,与firefox保持一致。

11 input file onpropertychange is not supported by firefox

    if(navigator.userAgent.indexOf("MSIE")>0){
document.getElementById('docID_1').attachEvent("onpropertychange",GetData);
}else {
document.getElementById('docID_1').addEventListener("input",GetData,false);
}

Javascript之Firefox与IE的更多相关文章

  1. firefox插件Firebug的使用教程

    什么是Firebug 从事了数年的Web开发工作,越来越觉得现在对WEB开发有了更高的要求.要写出漂亮的HTML代码:要编写精致的CSS样式表展示每个页面模块:要调试 javascript给页面增加一 ...

  2. 动态加载js和css

    开发过程中经常需要动态加载js和css,今天特意总结了一下常用的方法. 1.动态加载js 方法一:动态加载js文件 // 动态加载js脚本文件 function loadScript(url) { v ...

  3. IE, FF, Safari前端开发常用调试工具

    一些前端开发 IE 中的常用调试工具: Microsoft Script Debugger —— Companion.JS need to install this Companion.JS —— J ...

  4. CSS优先级、引入方式、Hack

    优先级 important > 内联(1,0,0,0) > id(1,0,0) > class(1,0) > element(1) > *通配符 css引入方式 方式一: ...

  5. js实用方法记录-js动态加载css、js脚本文件

    js实用方法记录-动态加载css/js 附送一个加载iframe,h5打开app代码 1. 动态加载js文件到head标签并执行回调 方法调用:dynamicLoadJs('http://www.yi ...

  6. WEB常用前端开发调试工具介绍

    只要是设计开发,就需要进行调试,尽管相对来说,前端的调试要简单一些,但使用一些调试工具或插件还是能提高你的工作效率.下面是一些主要用于IE浏览器环境和Firefox浏览器环境等的调试工具简介. 一.I ...

  7. 史上最全的浏览器 CSS & JS Hack 手册

    浏览器渲染页面的方式各不相同,甚至同一浏览器的不同版本(“杰出代表”是 IE)也有差异.因此,浏览器兼容成为前端开发人员的必备技能.如果有一份浏览器 Hack 手册,那查询起来就方便多了.这篇文章就向 ...

  8. 【Coursera】Internet History 小结

    前言 终于看完了接近一半课程的 History 的内容. 在这两周的时间里面,了解了互联网的起源,发展,以及现在互联网的情况.听了许多故事,有让人会心一笑的,也有令人感慨万千的.见到了许多令人景仰的科 ...

  9. 【Coursera】Fourth Week(2)

    Netscape JavaScript and Firefox 当Microsoft收购Netscape失败之后: JavaScript 创造并用于与 Visual Basic 竞争(1995). N ...

随机推荐

  1. 项目开发中的git简单使用

    原文地址: https://www.zhuyilong.fun/tech/the-blog-git.html 示例远程仓库地址: https://github.com/zhu-longge/gitWo ...

  2. GraphicsLab 之 Atmospheric Scattering (二)

    作者:i_dovelemon 日期:2020-11-25 主题:Atmospheric Scattering, Volume Scattering, Rayleigh Scattering, Mie ...

  3. Linux如何安装Docker?

    使用yum安装(centos7) Docker要求Centos系统的内核版本高于3.10,安装Docker前需要验证你的服务器内核版本是否支持Docker. 通过 uname -r 命令来查看你的服务 ...

  4. InnoDB 中的缓冲池(Buffer Pool)

    本文主要说明 InnoDB Buffer Pool 的内部执行原理,其生效的前提是使用到了索引,如果没有用到索引会进行全表扫描. 结构 在 InnoDB 存储引擎层维护着一个缓冲池,通过其可以避免对磁 ...

  5. MiniUI日期选择框MonthPicker英文修改为中文

    一.详细内容及解决方案 正常MIniUI的MonthPicker中的月份和星期默认是英文的,我百度搜索关于这个问题的博客少之又少,下面说下解决办法,非常简单. <input id="d ...

  6. LeetCode 040 Combination Sum II

    题目要求:Combination Sum II Given a collection of candidate numbers (C) and a target number (T), find al ...

  7. MySQL数据库入门学习

    一. 前言 作为一名大二在校生,因为正在学习网页设计,考虑到后台问题,所以便自学了数据库,可能给大家总结的不是很全,但是一些必要的点肯定会讲到.现在市场上有很多图形化的数据库, 二. MySQL基础知 ...

  8. Java 生成有序 UUID

    UUID.randomUUID() 生成的 UUID 是无序的,如果作为数据主键,不利于索引 Hibernate 的 UUIDHexGenerator.generate() 方法可以生成有序的 UUI ...

  9. pandas入门使用

    一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...

  10. (七)if/else就是goto

    一.CPU如何执行指令 CPU上有数以亿计的晶体管组层的复杂电路,我们先不用管具体电路如何实现:逻辑上我们可以认为CPU由许多寄存器组成,而这些寄存器又由许多锁存器和触发器组成,N个锁存器或触发器就可 ...