js 设备判断(移动端pc端 安卓ios 微信)

苹果安卓判断

 1 $(function () {
 2     var u = navigator.userAgent, app = navigator.appVersion;
 3     var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1; //g
 4     var isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
 5     if (isAndroid) {
 6         alert("安卓机!")
 7     }
 8     if (isIOS) {
 9         alert("苹果果机!")
10     }
11 });

移动端pc端判断

1 if(/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)) {
2     window.location.href = "https://www.baidu.com/";
3 } else {
4     window.location.href = "http://news.baidu.com/";
5 }

判断是否在微信中打开

function isWeiXin(){ 
        var ua = navigator.userAgent.toLowerCase(); 
        if(ua.indexOf('micromessenger') != -1) { 
            return true; 
        } else { 
            return false; 
        } 
    }

判断当前设备类型(综合)

 1 /* 当前设备浏览器版本信息 */
 2         var browser = {
 3             versions: function() {
 4                 var u = navigator.userAgent, app = navigator.appVersion;
 5                 return {//移动终端浏览器版本信息
 6                     trident: u.indexOf('Trident') > -1, //IE内核
 7                     presto: u.indexOf('Presto') > -1, //Opera内核
 8                     webKit: u.indexOf('AppleWebKit') > -1, //苹果/谷歌内核
 9                     gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐内核
10                     mobile: !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/AppleWebKit/), //是否为移动终端
11                     ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //iOS终端
12                     android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //Android终端或者UC浏览器
13                     iPhone: u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, //是否为iPhone或者QQHD浏览器
14                     iPad: u.indexOf('iPad') > -1, //是否iPad
15                     webApp: u.indexOf('Safari') == -1 //是否Web应该程序,没有头部与底部
16                 };
17             }(),
18             language: (navigator.browserLanguage || navigator.language).toLowerCase()
19         }
20 
21         //根据设备的不同,可以做一些事情。
22         if (browser.versions.ios || browser.versions.iPhone || browser.versions.iPad) {
23             //window.location="http://localhost/index.html";
24         }
25         else if (browser.versions.android) {
26             //window.location="http://localhost/demo.php";
27         }
28 
29         document.writeln("语言版本: " + browser.language + "<br/>");  
30         document.writeln("是否为移动终端: " + browser.versions.mobile + "<br/>");
31         document.writeln("iOS终端: " + browser.versions.ios + "<br/>");
32         document.writeln("Android终端: " + browser.versions.android + "<br/>");
33         document.writeln("是否为iPhone: " + browser.versions.iPhone + "<br/>");
34         document.writeln("是否iPad: " + browser.versions.iPad + "<br/>");
35         document.writeln("用户代理: " + navigator.userAgent + "<br/>");
36         // 用户代理是一种对数据打包/创造分组头,以及编址/传递消息的部件.
37 
38 作者:andyhdchoice
39 链接:https://www.jianshu.com/p/c647551caf5e
40 來源:简书
41 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

输出

是否为移动终端: false
iOS终端: false
Android终端: false
是否为iPhone: false
是否iPad: false
用户代理: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Win64; x64; Trident/4.0; .NET CLR 2.0.50727; SLCC2; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.3; .NET4.0C)

作者:andyhdchoice
链接:https://www.jianshu.com/p/c647551caf5e
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

 

posted @ 2018-01-30 10:48  =DLSS=webZT  阅读(193)  评论(0编辑  收藏  举报