zoukankan      html  css  js  c++  java
  • 如何高效的用判断用js判断ie6

      用js判断ie6的方法有很多,如:

    1、

    1. var isIE=!!window.ActiveXObject;
    2. var isIE6=isIE&&!window.XMLHttpRequest;
    3. var isIE8=isIE&&!!document.documentMode;
    4. var isIE7=isIE&&!isIE6&&!isIE8;
    5. if (isIE){
    6. if (isIE6){
    7. alert("ie6");
    8. }else if (isIE8){
    9. alert("ie8");
    10. }else if (isIE7){
    11. alert("ie7");
    12. }
    13. }

    2、能不能高效点呢,看到了其他的写法:

    这个貌似是利用 IE 中 JScript所特有的条件编译(或曰条件注释)来区分 IE 和非 IE(这里的IE/非IE均是针对内核而言,以IE为内核的浏览器将视为IE)


    复制代码代码如下:

    1. var ie = 0/*@cc_on+1@*/;
    复制代码


    一个最短的 js 判断 ie 或非 ie 的代码,大小仅仅 7bytes:
    复制代码代码如下:

    1. var ie = !+'v1';
    复制代码


    2010年1月,一位俄国人利用了IE与标准浏览器在处理数组的toString方法的差异,仅6bytes就完美完成了是否IE浏览器的检测:
    复制代码代码如下:

    1. var ie = !-[1,];
    复制代码


    利用这些发现,我们可以使代码写的更短。如今检测是否为 IE6 其实可以写成:

    复制代码代码如下:

    1. var ie6=!-[1,]&&!window.XMLHttpRequest;
    复制代码


    之前那大段累赘的分析 navigator,然后正则比较的方式,后面的 js 方法是不是效率更高了!

  • 相关阅读:
    java学习第六天
    java学习第五天
    java学习第四天
    java学习第三天
    java学习第二天
    java学习第一天
    性能测试学习第十三天_性能测试报告编写
    性能测试学习第十二天_性能分析
    性能测试学习第十一天_Analysis
    性能测试学习第十天_controller
  • 原文地址:https://www.cnblogs.com/dunken/p/4343730.html
Copyright © 2011-2022 走看看