JS 判断客户端环境(以及如何区分QQ客户端和QQ浏览器)
来源:互联网 发布:地下城无限网络中断 编辑:程序博客网 时间:2024/06/05 09:19
// 判断浏览器内核、手机系统等,使用 browser.version.iosvar browser = { version: function () { var u = navigator.userAgent; var ua = navigator.userAgent.toLocaleLowerCase(); var app = navigator.appVersion; return { trident: u.indexOf('Trident') > -1, // IE内核 presto: u.indexOf('Presto') > -1, // opera内核 webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核 gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, // 火狐内核 mobile: !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/AppleWebKit/), // 是否为移动终端 ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), // IOS终端 android: u.indexOf('Android') > -1 || u.indexOf('Mac') > -1, // 安卓终端 iPhone: u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, // 是否为iphone或QQHD浏览器 iPad: u.indexOf('iPad') > -1, // 是否为iPad webApp: u.indexOf('Safari') == -1, // 是否web应用程序,没有头部与底部 QQbrw: u.indexOf('MQQBrowser') > -1, // QQ浏览器 weiXin: u.indexOf('MicroMessenger') > -1, // 微信 QQ: ua.match(/QQ/i) == "qq", // QQ weiBo: ua.match(/WeiBo/i) == "weibo", // 微博 ucLowEnd: u.indexOf('UCWEB7.') > -1, // ucSpecial: u.indexOf('rv:1.2.3.4') > -1, webview: !(u.match(/Chrome\/([\d.]+)/) || u.match(/CriOS\/([\d.]+)/)) && u.match(/(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/), ucweb: function () { try { return parseFloat(u.match(/ucweb\d+\.\d+/gi).toString().match(/\d+\.\d+/).toString()) >= 8.2 } catch (e) { if (u.indexOf('UC') > -1) { return true; } return false; } }(), Symbian: u.indexOf('Symbian') > -1, ucSB: u.indexOf('Firofox/1.') > -1 }; }()};
- 一般的客户端环境直接调用browser.version.xx进行判断即可
- 但是使用browser.version.QQ时,在QQ客户端和QQ浏览器中均返回true,所以无法判断。
- 但是的但是,还有一个browser.version.QQbrw可以用来判断是否为QQ浏览器
- 所以的所以,通过(browser.version.QQ && !browser.version.QQbrw)组合,不就可以判断是否为QQ客户端了么?(机智脸^-^)
阅读全文
0 0
- JS 判断客户端环境(以及如何区分QQ客户端和QQ浏览器)
- 手机浏览器调用手机qq客户端的js
- qq客户端
- 手机浏览器,QQ通讯组件无法唤醒QQ客户端
- 手机浏览器,QQ通讯组件无法唤醒QQ客户端
- ios使用友盟分享到QQ/微信时时如何判断手机上是否安装了QQ以及微信的客户端
- js 判断浏览器、客户端、设备
- 模仿QQ客户端和服务器(支持window和linux)
- 利用 Prism 和 Web QQ 配置 Linux 的 QQ 客户端
- 关于项目 java版本QQ (含服务器和客户端)
- QQ客户端和服务器端主要代码
- QQ客户端源代码发布
- ubuntu QQ 替代客户端
- linux下qq客户端
- Linux QQ之客户端
- QQ客户端团队博客
- java QQ客户端
- 仿qq客户端
- C++所学的相关知识点整理(不定期更新)
- Club Skype for Business 为什么说这款产品不让你吃晚饭?
- Spring核心类DefaultListatleBeanFactory
- 令人拍案叫绝的Wasserstein GAN
- Linux下的tar压缩解压缩命令详解
- JS 判断客户端环境(以及如何区分QQ客户端和QQ浏览器)
- Python学习笔记
- xz压缩命令
- 评论《献给每天想辞职的人》
- 笔记:gitlab-ci 可持续集成(3) runner 基本配置
- 前端之插件-dynatree
- ERROR 1201 (HY000): Could not initialize master info structure解决方法
- UIView生命周期
- OpenCV—基本矩阵操作与示例