js如何判断不同系统的浏览器类型
2023-06-13 09:15:07 时间
functionEnv(){
varua=navigator.userAgent.toLowerCase();
functioncheck(r){
returnr.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/),//uniquetoSafari2
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(/msie7/),
isIE8:!check(/opera/)&&check(/msie/)&&check(/msie8/),
isIE6:!check(/opera/)&&check(/msie/)&&!check(/msie7/)&&!check(/msie8/),
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|macosx/),
isAir:check(/adobeair/),
isLinux:check(/linux/),
isSecure:/^https/i.test(window.location.protocol),
/**
*是否为空,如果允许allowBlank=true,则当v=""时返回true
*/
isEmpty:function(v,allowBlank){
returnv===null||v===undefined||((this.isArray(v)&&!v.length))||(!allowBlank?v==="":false);
},
/**
*是否为数组类型
*/
isArray:function(v){
returntoString.apply(v)==="[objectArray]";
},
/**
*是否为日期类型
*/
isDate:function(v){
returntoString.apply(v)==="[objectDate]";
},
/**
*是否为Object类型
*/
isObject:function(v){
return!!v&&Object.prototype.toString.call(v)==="[objectObject]";
},
/**
*判断是否是函数
*/
isFunction:function(v){
returntoString.apply(v)==="[objectFunction]";
},
/**
*判断是否为数字
*/
isNumber:function(v){
returntypeofv==="number"&&isFinite(v);
},
/**
*判断字符串类型
*/
isString:function(v){
returntypeofv==="string";
},
/**
*判断布尔类型
*/
isBoolean:function(v){
returntypeofv==="boolean";
},
/**
*判断是否为dom元素
*/
isElement:function(v){
return!!v&&v.tagName;
},
/**
*判断是否已定义
*/
isDefined:function(v){
returntypeofv!=="undefined";
}
}
然后varenv=env();用env.来取的所需的类型。
相关文章
- js 实现 LFU 算法
- leetcode 78. 子集 js 实现
- Environments: JS变量查找的“罪魁祸首”
- 一个请求的组成、静态页面和动态页面、HTML, CSS和JS、浏览器渲染的过程
- js中四舍五入的方法_JS取整
- vue引入js文件并使用_css引入js
- JS设置定时器_js设置定时器
- 【JS 逆向百例】猿人学系列 web 比赛第二题:js 混淆 - 动态 cookie,详细剖析
- JS获取浏览器信息详解编程语言
- JS实现手机摇一摇功能详解编程语言
- EL表达式在JS中使用时有无双引号的区别详解编程语言
- 自己给JS数组添加更多迭代器(具有迭代功能的方法)
- Linux上的JS压缩工具(js压缩工具linux)
- 用js来生成随机彩票号码清单
- 用js判断用户浏览器是否是XPSP2的IE6
- js判断浏览器类型去全角、半角空格自动关闭当前窗口
- CSS和JS标签style属性对照表(方便js开发的朋友)
- js对象之JS入门之Array对象操作小结
- 兼容IE、FireFox、Chrome等浏览器的xml处理函数js代码
- JS判断浏览器类型与版本的实现代码
- js操作iframe兼容各种主流浏览器示例代码
- 用JS做的简单的可折叠的两级树形菜单
- 使用js声明数组,对象在jsp页面中(获得ajax得到json数据)
- js调用百度地图api并在地图上进行打点添加标注
- 兼容主流浏览器的JS复制内容到剪贴板
- 封装好的js判断操作系统与浏览器代码分享