开门记录:FF和IE的某些区别

浏览器主要分为两类,第一类 IE系列,第二类 FF(Firefox) chrome safari(其中 netscape opera未加入测试)。如果没有特别说明 chrome safari,则归类在 FF

一.   跨页面的数据调用

1.       IE中直接使用 parent就代表了父页面的 window,而在 FF里面必须要用 parent. contentWindow;

2.       <iframe id=”a” name=”a”  />, FF中使用 frames数组的数字索引 或是要设置 iframe name值才能调用 iframe(frames[“a”]或者 frame[0]) IE中可以不设置 name就能调用到这个 iframe,因为 IE查找机制中 id可以代替 name

 

二.   xml的解析

1.       IE FF/safari Chorme xml文件解析不同;而且报错方式也不同:

IE xmldoc . parseError . errorCode=0;

FF xmldoc . documentElement . tagName = “ parsererror”;

//IE/FF/Chrome/safari 通用 加载 XML 文件并返回 XML 文档节点

function loadXmlFile ( xmlFile , isAsync ){

    isAsync = isAsync || false ;

    var xmlDom = null ;

    if ( window . ActiveXObject ){

        xmlDom = new ActiveXObject ( "Microsoft.XMLDOM" );

        //xmlDom.loadXML(xmlFile);// 如果用的是 XML 字符串

        xmlDom . load ( xmlFile ); // 如果用的是 xml 文件。

         xmlDom . async = isAsync ;

    } else if ( document . implementation && document . implementation . createDocument ){

        var xmlhttp = new window . XMLHttpRequest ();

        xmlhttp . open ( "GET" , xmlFile , isAsync );

        xmlhttp . send ( null );

        xmlDom = xmlhttp . responseXML ;

    } else {

        xmlDom = null ;

    }

    return xmlDom ;

}

 

2.       IE FF/safari/Chrome xml字符串解析不同。

3.       IE FF xml节点解析不同。

<ServerConfig>

    <WriteLog>1</WriteLog>

    <IP>192.168.1.70</IP>

    <Port>8021</Port>

</ServerConfig >

一般认为 ServerConfig 节点下的第一哥子节点是 WriteLog 但是在 FF 中, ServerConfig 不是 WriteLog ,而是一个默认的文本子节点 # 其内容为空。在 FF 解析 xml 内容时,要注意判断这个默认的文本子节点

三.   Js需要注意的地方

1.       执行 js,出现错误时, IE继续执行, FF中断执行

2.       获取某个节点内无 html节点内容

IE obj.innerText FF obj.textContent

3.       html层问题

IE中,层的内容为空,则忽略该层;在 FF中,层的内容为空,不会忽略,会阻挡下一层。设置 display:none就能使该层不可能

4.       marquee动态改变的问题

marque动态改变其值, IE会重新计算其文本长度,自动调整循环;在 FF中,按照初始化的内容,计算文本长度,动态改变内容后,可能出现内容未显示完整就进行下一此循环。

5.       多层接收同一事件

多层重叠在一起,又监听同一事件。 IE中,都会接收到; FF中,最上层才会接收到事件,下层的需要手动传递事件。

6.       每一次使用 window.setInterval,都要记得使用 window.clearInterval来清除。否则,在关闭的某个 iframe里面有 setInterval则会出错,造成内存溢出。

7.       html元素的调用,

IE中可以使用 document.all.ElemName ElemName或是 ElemID等简便方法进行调用;在 FF中必须用 document.getElementById或是 document.getElementsByName等规范调用。

8.       滚动条样式, IE能设置, FF不能设置

9.       背景透明, IE filter FF opacity

10.   width+border:可见宽度。在 FF中是 width+border,在 IE中是 width

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值