js判断当前页面在移动设备还是在PC端中打开的几种方法

一、判断不同终端跳转

JavaScript Code复制内容到剪贴板
  1. <script>    
  2.     
  3.     var browser = {    
  4.         versions: function () {    
  5.             var u = navigator.userAgent, app = navigator.appVersion;    
  6.             return {     //移动终端浏览器版本信息    
  7.                 trident: u.indexOf('Trident') > -1, //IE内核    
  8.                 presto: u.indexOf('Presto') > -1, //opera内核    
  9.                 webKit: u.indexOf('AppleWebKit') > -1, //苹果、谷歌内核    
  10.                 gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐内核    
  11.                 mobile: !!u.match(/AppleWebKit.*Mobile.*/), //是否为移动终端    
  12.                 ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios终端    
  13.                 android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android终端或uc浏览器    
  14.                 iPhone: u.indexOf('iPhone') > -1, //是否为iPhone或者QQHD浏览器    
  15.                 iPad: u.indexOf('iPad') > -1, //是否iPad    
  16.                 webApp: u.indexOf('Safari') == -1 //是否web应该程序,没有头部与底部    
  17.             };    
  18.         }(),    
  19.         language: (navigator.browserLanguage || navigator.language).toLowerCase()    
  20.     }    
  21.     if (browser.versions.mobile) {//判断是否是移动设备打开。browser代码在下面    
  22.         var ua = navigator.userAgent.toLowerCase();//获取判断用的对象    
  23.         if (ua.match(/MicroMessenger/i) == "micromessenger") {    
  24.             //在微信中打开    
  25.             setInterval(WeixinJSBridge.call('closeWindow'),2000);    
  26.         }    
  27.         if (ua.match(/WeiBo/i) == "weibo") {    
  28.             //在新浪微博客户端打开    
  29.         }    
  30.         if (ua.match(/QQ/i) == "qq") {    
  31.             //在QQ空间打开    
  32.         }    
  33.         if (browser.versions.ios) {    
  34.             //是否在IOS浏览器打开    
  35.         }    
  36.         if(browser.versions.android){    
  37.             //是否在安卓浏览器打开    
  38.         }    
  39.     } else {    
  40.         //否则就是PC浏览器打开    
  41.         window.close();    
  42.     }    
  43.         
  44. </script>    

二、js判断用户的浏览设备是移动设备还是PC

JavaScript Code复制内容到剪贴板
  1. <script type="text/javascript">    
  2.     function browserRedirect() {    
  3.         var sUserAgent = navigator.userAgent.toLowerCase();    
  4.         var bIsIpad = sUserAgent.match(/ipad/i) == "ipad";    
  5.         var bIsIphoneOs = sUserAgent.match(/iphone os/i) == "iphone os";    
  6.         var bIsMidp = sUserAgent.match(/midp/i) == "midp";    
  7.         var bIsUc7 = sUserAgent.match(/rv:1.2.3.4/i) == "rv:1.2.3.4";    
  8.         var bIsUc = sUserAgent.match(/ucweb/i) == "ucweb";    
  9.         var bIsAndroid = sUserAgent.match(/android/i) == "android";    
  10.         var bIsCE = sUserAgent.match(/windows ce/i) == "windows ce";    
  11.         var bIsWM = sUserAgent.match(/windows mobile/i) == "windows mobile";    
  12.         document.writeln("您的浏览设备为:");    
  13.         if (bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM) {    
  14.             document.writeln("phone");    
  15.         } else {    
  16.             document.writeln("pc");    
  17.         }    
  18.     }    
  19.     
  20.     browserRedirect();    
  21. </script>    

 

三 、插件形式

XML/HTML Code复制内容到剪贴板
  1. <script src="/js/device.min.js"></script>  
  2. <script type="text/javascript">  
  3. if(device.mobile()){  
  4. window.location ="http://www.pc07.com/e/action/ShowInfo.php?classid=18&id=[!--id--]&nrid=10";  //可以换成http地址  
  5. }  
  6. </script>  

 

标签:
分享:

相关文章