zoukankan      html  css  js  c++  java
  • JS兼容性测试

    1.集合类对象问题
      说明:IE下,可以使用()或[]获取集合类对象;
      Firefox下,只能使用[]获取集合类对象. 
      解决方法:统一使用[]获取集合类对象.

            <script type="text/javascript">
                var a = new Number(0);
                var b = new Number(1);
                var c = new Date();
                
                var tem = [a,b,c];
                for(var i = 0; i < tem.length; i++){
                    document.write(tem[i] + "</br>");
                }
                
            </script>

      但是当使用document.write(tem(0) + "</br>")时, IE8报错,缺少函数,Firefox报错函数未定义,所以我的测试结果是IE 也不可以使用()来获取集合类对象

    2.HTML对象获取问题
      FireFox:document.getElementById("idName");
      ie:document.idname或者document.getElementById("idName").
      解决办法:统一使用document.getElementById("idName");

         完全兼容的代码:

        <body>
            <div id="test"></div>
            <script type="text/javascript">
                var test = document.getElementById("test");
                test.innerHTML = "Just test";
            </script>
        </body>

           但是把代码改为 var test = document.test; IE报错test is null or not an object ,FireFox 报错test is undefined。

           所以其实这种访问方式在IE里面也不可以。

    3.const问题

          说明:Firefox下,可以使用const关键字或var关键字来定义常量;

          IE下,只能使用var关键字来定义常量. 

         解决方法:统一使用var关键字来定义常量.

         测试结果: FireFox可以使用const关键字,IE则提示语法错误

    4.window.event问题

          说明:window.event只能在IE下运行,而不能在Firefox下运行,这是因为Firefox的event只能在事件发生的现场使用.  

          Firefox必须从源处加入event作参数传递。Ie忽略该参数,用window.event来读取该event。

          解决方法: 
      Submitted(event)"/>   …

      <script   language="javascript">  
        function   Submitted(evt)   {  
        evt=evt?evt:(window.event?window.event:null);
      }  
      </script>

          测试结果:如以上解决办法一致。

    5.event.x与event.y问题
      说明:IE下,even对象有x,y属性,但是没有pageX,pageY属性;
      Firefox下,even对象有pageX,pageY属性,但是没有x,y属性. 
      解决方法:使用mX(mX   =   event.x   ?   event.x   :   event.pageX;)来代替IE下的event.x或者Firefox下的event.pageX. 

     

     

  • 相关阅读:
    推断两条单链表是否相交
    字典树的实现
    ActivityGroup window bad token问题深入分析
    &quot;《 Serial Drivers 》by Alessandro Rubini&quot; 学习笔记
    rac_安装软件时报版本号过高问题
    Mac OS 环境下 安装 Asp.Net及使用Yeoman 创建Asp.Net 项目
    iOS:一个Cell中设置另外一个Cell中的button
    Java虚拟机定义
    一道超级坑爹的水题(ACdream oj 无耻的出题人)
    Cocos2d-x 3.x版2048游戏开发
  • 原文地址:https://www.cnblogs.com/yingsmirk/p/2465534.html
Copyright © 2011-2022 走看看