zoukankan      html  css  js  c++  java
  • JS 浏览器类型判断,IE版本类型判断,正则表达式判断。

    常用的 JavaScript 检测浏览器为 IE 是哪个版本的代码,包括是否是最人极端厌恶的 ie6 识别与检测。

    复制代码
    代码如下:

    var isIE=!!window.ActiveXObject;
    var isIE6=isIE&&!window.XMLHttpRequest;
    var isIE8=isIE&&!!document.documentMode;
    var isIE7=isIE&&!isIE6&&!isIE8;
    if (isIE){
    if (isIE6){
    alert("ie6");
    }else if (isIE8){
    alert("ie8");
    }else if (isIE7){
    alert("ie7");
    }
    }

    然后是一个稍微短的 js 判断是否 ie 的方法:
    这个貌似是利用 IE 中 JScript所特有的条件编译(或曰条件注释)来区分 IE 和非 IE(这里的IE/非IE均是针对内核而言,以IE为内核的浏览器将视为IE)

    复制代码
    代码如下:

    var ie = 0/*@cc_on+1@*/;

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

    复制代码
    代码如下:

    var ie = !+'v1';

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

    复制代码
    代码如下:

    var ie = !-[1,];

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

    复制代码
    代码如下:

    var ie6=!-[1,]&&!window.XMLHttpRequest;

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

  • 相关阅读:
    2019-10-28-开源项目
    2018-8-10-win10-uwp-MetroLog-入门
    2018-5-20-C#-BBcode-转-Markdown
    2018-8-10-win10-UWP-序列化
    2018-2-13-win10-uwp-BadgeLogo-颜色
    2019-1-25-WPF-ListBox-的选择
    2019-1-5-Windows-的-Pen-协议
    android studio打印
    Java 基本数据类型
    FreeRTOS 任务通知模拟计数型信号量
  • 原文地址:https://www.cnblogs.com/RedRoshan/p/3904707.html
Copyright © 2011-2022 走看看