判断浏览器,还在用userAgent吗,你out了
以下内容摘自http://www.cnblogs.com/rubylouvre/archive/2009/10/14/1583362.html
//2010 4 16日更新
        ie678 = !+"\v1" ;
        ie678 = !-[1,];//IE9预览版中失效
        ie678 ='\v'=='v' ;
        ie678 = ('a~b'.split(/(~)/))[1] == "b"
        ie678 = 0.9.toFixed(0) == "0"
        IE8 = window.toStaticHTML
        IE9 = window.msPerformance 
        ie = !!document.recalc
        ie = !!window.VBArray
        ie = !!window.ActiveXObject
        ie678 = 0//@cc_on+1;
        ie = !!window.createPopup;
        ie = /*@cc_on!@*/!1;
        ie = document.expando;//document.all在opera firefox的古老版本也存在
        ie = /\w/.test('\u0130') //由群里的abcd友情提供
        
        ie6 = !"1"[0] //利用IE6或IE5的字符串不能使用数组下标的特征
        ie8 = !!window.XDomainRequest;
        ie9 =  document.documentMode && document.documentMode === 9;
        //自创,基于条件编译的嗅探脚本,IE会返回其JS引擎的版本号,非IE返回0
        var ieVersion = eval("''+/*@cc_on"+" @_jscript_version@*/-0")*1
        ie9 = ieVersion === 5.9
        ie8 = ieVersion === 5.8
        ie7 = ieVersion === 5.7
        ie6 = ieVersion === 5.6
        ie5 = ieVersion === 5.5
        //https://developer.mozilla.org/En/Windows_Media_in_Netscape
        netscape = !!window.GeckoActiveXObject 
        gecko  = !!window.netscape //包括firefox
        firefox = !!window.Components
        firefox = !!window.updateCommands
        firefox = !!window.sidebar
        safari = !!(navigator.vendor && navigator.vendor.match(/Apple/))
        safari = window.openDatabase && !window.chrome;
        chrome= !!(window.chrome && window.google)
        opera=!!window.opera ;
        //傲游2 3
        maxthon = /maxthon/i.test(navigator.userAgent)
        //360安全浏览器
        is360se = /360se/i.test(navigator.userAgent)
//2010.6.4
       setTimeout(function(){//FF的setTimeout总是有一个额余的参数0
          var isFF = !!arguments.length;
          alert(isFF)
        }, 0);
//判定IE版本
2010.10.1
      ie = (function(undefined){
        var v = 3, div = document.createElement('div');
        while (
        div.innerHTML = '<!--[if gt IE '+(++v)+']><i></i><![endif]-->',
        div.getElementsByTagName('i')[0]);
        return v> 4 ? v : undefined;
      }());
//判定IE版本 2011.2.24 IE 条件注释在
       ie = (function() {
          var v = 3, div = document.createElement('div');
          while (div.innerHTML = '<!--[if gt IE '+(++v)+']>1<![endif]-->', div.innerHTML);
          return v > 4 ? v : !v;
        }());
//手机的相关判定 2011.9.21
 isIPhone = /iPhone/i.test(navigator.userAgent);
 isIPhone4 = window.devicePixelRatio >= 2
//在网页中,pixel与point比值称为device-pixel-ratio,普通设备都是1,iPhone 4是2,有些Android机型是1.5
//http://blog.webcreativepark.net/2011/01/25-173502.html
var ua =  navigator.userAgent;
isAndroid = /Android/i.test(ua);
isBlackBerry = /BlackBerry/i.test(ua)
isWindowPhone = /IEMobile/i.test(ua)
isIOS = /iPhone|iPad|iPod/i.test(ua)
isMobile = isAndroid || isBlackBerry || isWindowPhone || isIOS
判断浏览器,还在用userAgent吗,你out了的更多相关文章
- 判断浏览器类型-----------navigator.userAgent.indexOf()
		
<script language="JavaScript"> <!-- function getOs() { var OsObject = "" ...
 - 使用window.navigator.userAgent属性判断浏览器类型及版本
		
使用window.navigator.userAgent属性判断浏览器类型及版本 2011-12-11 22:03:11 window.navigator.userAgent属性包含了浏览器类型.版本 ...
 - JQuery 判断浏览器及其版本
		
JQuery 中用 方法 jQuery.browser 来判断浏览器,返回值可以为: safari opera msie mozilla. 当然有时候我们还需要区分版本 这就要用到 jQuery.br ...
 - JS判断浏览器类型及版本
		
浏览器 ie firefox opera safari chrome 分类: 一路辛酸---JavaScript 你知道世界上有多少种浏览器吗?除了我们熟知的IE, Firefox, Opera, S ...
 - javascript判断浏览器的版本
		
在javascript中直接的使用navigator.userAgent就可以获取当前浏览器的版本等信息,以下是列出来的关于不同浏览器显示的值(Windows.Android.iPhone): IE6 ...
 - JavaScript判断浏览器类型及版本
		
JavaScript是前端开发的主要语言,我们可以通过编写JavaScript程序来判断浏览器的类型及版本.JavaScript判断浏览器类型一般有两种办法,一种是根据各种浏览器独有的属性来分辨,另一 ...
 - (转)JavaScript判断浏览器类型及版本
		
IE 只有IE支持创建ActiveX控件,因此她有一个其他浏览器没有的东西,就是ActiveXObject函数.只要判断window对象存在ActiveXObject函数,就可以明确判断出当前浏览器是 ...
 - js判断浏览器类型以及版本
		
你知道世界上有多少种浏览器吗?除了我们熟知的IE, Firefox, Opera, Safari四大浏览器之外,世界上还有近百种浏览器. 几天前,浏览器家族有刚诞生了一位小王子,就是Google推出的 ...
 - 基于JavaScript判断浏览器到底是关闭还是刷新(超准确)
		
这篇文章主要介绍了基于JavaScript判断浏览器到底是关闭还是刷新(超准确)的相关资料,需要的朋友可以参考下 本文是小编总结的一些核心内容,个人感觉对大家有所帮助,具体内容请看下文: 页面加载时只 ...
 - JS 判断浏览器类型,获取位置信息,让手机震动
		
判断是否是安卓 var isAndroid = /Android/i.test(navigator.userAgent); 判断是否是IOS系统 var isIOS = /iPhone|iPad|iP ...
 
随机推荐
- X86保护机制
			
目录 保护机制的开启与关闭 描述符表限长检查 段限长检查 段类型检查 类型信息的存储 类型检查 空选择子的检查 特权级检查 访问数据段时的特权级检查 访问代码段中的数据 堆栈寄存器SS的特权级检查 在 ...
 - 8.Android-简单的登录案例编写
			
本章来学习登录案例,由于还未学习自定义控件外观,所以ui界面先用最简单的,并保存登录账号密码到data/data/包名/files下 1.学习之前需要掌握的Context类(通过Context来往AP ...
 - 多测师讲解 _requests安装问题解决_高级讲师肖sir
			
步骤一:"dos下新建一个pip文件,在文件下建一个pip.ini 文件,步骤二:文件中内容[global]index-url=http://mirrors.aliyun.com/pypi/ ...
 - day50 Pyhton 前端01
			
文档结构: <!-- 定义文档类型 --> <!DOCTYPE html> <!-- 文档 --> <html lang='en'> <!-- 仅 ...
 - day28 Pyhton 面向对象 继承
			
1.昨日回顾 类的命名空间 静态属性\动态属性(方法) 对象的命名空间 #对象的属性 #类指针:对象能够通过这个类指针找到类 #静态属性:属于类,多个对象共享这个资源 #尽量用类名来操作静态属性 #对 ...
 - JS中实现Trim(),TrimStart(),TrimEnd() 的方法
			
//去除字符串头尾空格或指定字符 String.prototype.Trim = function (c) { if (c == null || c == "") { var st ...
 - git commit 代码提交规范
			
格式 type: description 1. type 类型 type 是 commit 的类别,只允许如下几种标识: fix: 修复bug add: 新功能 update: 更新 refactor ...
 - 初识 MongoDB 和 .NET Core 入门
			
昨天搭建完毕 MongoDB 集群 后,开始计划了解 MongoDB ,并引入使用场景,这里介绍一下学习过程中的一些笔记,帮助读者快速了解 MongoDB 并使用 C# 对其进行编码. 浅入 Mong ...
 - Python之集合详解
			
定义: 1.不同元素组成 2.无序 3.集合中的元素必须是不可变类型 创建集合 s = {1,2,3,4,5,6,7,8} 1.定义可变集合 >>> set_test = set(' ...
 - 手撸了一个HTTP框架:支持Sprng MVC、IOC、AOP,拦截器,配置文件读取...
			
https://github.com/Snailclimb/jsoncat :仿 Spring Boot 但不同于 Spring Boot 的一个轻量级的 HTTP 框架 距离上一次给小伙伴们汇报简易 ...