js如何判断不同系统的浏览器类型

代码如下:

function Env(){
var ua=navigator.userAgent.toLowerCase();
function check(r){
return r.test(ua);
}
return {
//判断环境,操作系统、浏览器、是否是https连接等
DOC : document,
isStrict : DOC.compatMode == "CSS1Compat" ,
isOpera : check(/opera/) ,
isChrome : check(/\bchrome\b/) ,
isWebKit : check(/webkit/) ,
isSafari : !check(/\bchrome\b/)&& check(/safari/) ,
isSafari2 : !check(/\bchrome\b/)&& check(/safari/)&& check(/applewebkit\/4/), // unique to Safari 2
isSafari3 : !check(/\bchrome\b/)&& check(/safari/)&& check(/version\/3/),
isSafari4 : !check(/\bchrome\b/)&& check(/safari/)&& check(/version\/4/),
isIE : !check(/opera/) && check(/msie/) ,
isIE7 : !check(/opera/) && check(/msie/)&& check(/msie 7/) ,
isIE8 : !check(/opera/) && check(/msie/)&& check(/msie 8/) ,
isIE6 : !check(/opera/) && check(/msie/)&&!check(/msie 7/)&& !check(/msie 8/),
isGecko : !check(/webkit/)&& check(/gecko/),
isGecko2 : check(/webkit/)&& check(/rv:1\.8/),
isGecko3 : check(/webkit/)&& check(/rv:1\.9/),
isBorderBox : !check(/opera/) && check(/msie/)&& DOC.compatMode != "CSS1Compat",
isWindows : check(/windows|win32/),
isMac : check(/macintosh|mac os x/),
isAir : check(/adobeair/),
isLinux : check(/linux/),
isSecure : /^https/i.test(window.location.protocol),
/**
* 是否为空,如果允许allowBlank=true,则当v=''时返回true
*/
isEmpty : function(v, allowBlank){
return v === null || v === undefined || ((this.isArray(v) && !v.length)) || (!allowBlank ? v === '' : false);
},

/**
* 是否为数组类型
*/
isArray : function(v){
return toString.apply(v) === '[object Array]';
},

/**
* 是否为日期类型
*/
isDate : function(v){
return toString.apply(v) === '[object Date]';
},

/**
* 是否为Object类型
*/
isObject : function(v){
return !!v && Object.prototype.toString.call(v) === '[object Object]';
},

/**
* 判断是否是函数
*/
isFunction : function(v){
return toString.apply(v) === '[object Function]';
},

/**
* 判断是否为数字
*/
isNumber : function(v){
return typeof v === 'number' && isFinite(v);
},

/**
* 判断字符串类型
*/
isString : function(v){
return typeof v === 'string';
},

/**
* 判断布尔类型
*/
isBoolean : function(v){
return typeof v === 'boolean';
},

/**
* 判断是否为dom元素
*/
isElement : function(v) {
return !!v && v.tagName;
},

/**
* 判断是否已定义
*/
isDefined : function(v){
return typeof v !== 'undefined';
}
}

然后var env = env(); 用env. 来取的所需的类型。

(0)

相关推荐

  • 结合JQ1.9通过js正则判断各种浏览器版本的方法

    如下所示:$.browser.mozilla = /firefox/.test(navigator.userAgent.toLowerCase());  $.browser.webkit = /webkit/.test(navigator.userAgent.toLowerCase());  $.browser.opera = /opera/.test(navigator.userAgent.toLowerCase());  $.browser.msie = /msie/.test(naviga

  • JS 正则表达式判断各个浏览器代码详解

    注释都在代码里面了.很详细. 只判断了IE 火狐 谷歌 因为我没装其他浏览器了,所以呵呵.当然如果要判断其他浏览器.基本代码都是一样的了. 复制代码 代码如下: (function(){ window.sys={}; var ua=navigator.userAgent.toLowerCase(); //首先我们来看一下3个浏览器都返回了什么看下面. //ie ua=mozilla/4.0 (compatible; msie 8.0; windows nt 5.2; trident/4.0; q

  • 利用js判断浏览器类型(是否为IE,Firefox,Opera浏览器)

    现在的浏览器大概有好几种,各个人的喜好也不同,所以也就用着不同的浏览器!我们开发的人来说经常要加个判断,要不可能某些功能没法正常使用.要是没加个判断就会给大家带来些麻烦!虽然可能大家的喜好不同!用的系统也不同!有人喜欢用ie, firefox,还有人喜欢用腾讯tt,maxthon等等.虽然名字可能有很多种,但是内核我们知道下就没问题了.如IE内核的:IE,maxthon,tt都是.当然还有netscape内核!看大家怎么去判断! 由于在开发时碰上这个问题.于是找了下资料和自己总结如下JS代码:

  • js如何判断不同系统的浏览器类型

    复制代码 代码如下: function Env(){ var ua=navigator.userAgent.toLowerCase(); function check(r){ return r.test(ua); } return { //判断环境,操作系统.浏览器.是否是https连接等 DOC : document, isStrict : DOC.compatMode == "CSS1Compat" , isOpera : check(/opera/) , isChrome : c

  • JS简单判断是否在微信浏览器打开的方法示例

    本文实例讲述了JS简单判断是否在微信浏览器打开的方法.分享给大家供大家参考,具体如下: 最近做很多HTML5的项目,很多页面会通过微信微博等SNS分享出去.在分享页面上提供公司APP的下载.但是在很多应用的浏览器中,点击下载链接无法下载应用.那么针对这些浏览器我们需要给用户提示从safari或者系统自带的浏览器打开分享页面.通过js就可以判断当前页面是在什么浏览器打开的. 以下是一段示例代码,注释中表明了通过JS如何判断是否在微信浏览器打开,是否在QQ空间浏览器,是否在新浪微博打开.当然可以做得

  • JS 动态判断PC和手机浏览器实现代码

    这个只是一个小知识,也是在网上找的,挺好用! 动态判断浏览器是PC还是移动端! <script> var browser={ versions:function(){ var u = navigator.userAgent, app = navigator.appVersion; return { trident: u.indexOf('Trident') > -1, //IE内核 presto: u.indexOf('Presto') > -1, //opera内核 webKit

  • JS如何判断是否为ie浏览器的方法(包括IE10、IE11在内)

    今天在写一个代码复制功能的时候,发现的这个问题,ie11也不支持document.all,看来以后越来越标准了 今天碰到一个奇怪的问题,有一个页面,想指定用IE浏览器打开,在VS开发环境没有问题,但部署到服务器上,即使是用IE打开页面,还是提示"仅支持IE",真是晕啊!! 判断是否IE浏览器用的是window.navigator.userAgent,跟踪这个信息,发现在开发环境,识别为IE10,但访问服务器则识别为IE11,但IE11的userAgent里是没有MSIE标志的,原因就是

  • JS判断是否在微信浏览器打开的简单实例(推荐)

    最近做很多HTML5的项目,很多页面会通过微信微博等SNS分享出去.在分享页面上提供公司APP的下载.但是在很多应用的浏览器中,点击下载链接无法下载应用.那么针对这些浏览器我们需要给用户提示从safari或者系统自带的浏览器打开分享页面.通过js就可以判断当前页面是在什么浏览器打开的. 以下是一段示例代码,注释中表明了通过JS如何判断是否在微信浏览器打开,是否在QQ空间浏览器,是否在新浪微博打开.当然可以做得更完善一点,再加上判断是在移动设备打开还是在PC端浏览器打开的,更加细分一点,可以判断是

  • js/jquery判断浏览器类型的方法小结

    JS获取浏览器信息 复制代码 代码如下: 浏览器代码名称:navigator.appCodeName 浏览器名称:navigator.appName 浏览器版本号:navigator.appVersion 对Java的支持:navigator.javaEnabled() MIME类型(数组):navigator.mimeTypes 系统平台:navigator.platform 插件(数组):navigator.plugins 用户代理:navigator.userAgent js判断IE浏览器

  • JS判断浏览器类型与版本的实现代码

    在众多的浏览器产品中,IE.Firefox.Opera.Safari........众多品牌却标准不一,因此时常需要根据不同的浏览器,甚至相同浏览器不同版本做不同的操作,因此,知晓浏览器的判断方法,还是很重要的.下面列举一下常用的判断方法 1.判断浏览器是否为IE document.all ? 'IE' : 'others':在IE下document.all值为1,而其他浏览器下的值为0: navigator.userAgent.indexOf("MSIE")>0 ? 'IE'

  • JS如何判断浏览器类型和详细区分IE各版本浏览器

    今天用到JS判断浏览器类型,于是就系统整理了一下,便于后期使用. /* * 描述:判断浏览器信息 * 编写:LittleQiang_w * 日期:2016.1.5 * 版本:V1.1 */ //判断当前浏览类型 function BrowserType() { var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串 var isOpera = userAgent.indexOf("Opera") > -1; //判断是否

  • Vue.js获取手机系统型号、版本、浏览器类型的示例代码

    1.index.html引入 <script src="http://code.jquery.com/jquery-1.11.1.min.js"> </script> <script src="https://cdn.jsdelivr.net/npm/mobile-detect@1.4.4/mobile-detect.min.js"> </script> 2.直接用 <script> //判断数组中是否包含

  • js判断当前浏览器类型,判断IE浏览器方法

    最短IE判断方法,原文地址: http://www.jb51.net/article/23621.htm 判断IE浏览器最短方法:var isIE = !-[1,] 原理:[1,]在标准浏览器中返回"1",相当于调用[1,].toString(),在IE中返回"1,"在这个时候对返回值使用负号强制转换为数字时,标准浏览器返回1,IE则返回NaN,再对1和NaN取反时,标准浏览器返回false,IE返回true. js判断浏览器类型 原文基本上没有什么问题,但他的判断

随机推荐