js判断当前页面在移动设备还是在PC端中打开
前端笔记 2017-03-31 13:05:55

 一、判断不同终端地行跳转

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>  

 

三、判断移动端跳转到指定url (2018.11.25)

JavaScript Code复制内容到剪贴板
  1. <script type="text/javascript">try {var urlhash = window.location.hash;   
  2.  if (!urlhash.match("fromapp")){if ((navigator.userAgent.match(/(iPhone|iPod|Android|ios|iPad)/i)))   
  3.  {window.location="http://xxx.com";}}}catch(err){}</script>  

 

 

本文来自于:http://www.yoyo88.cn/note/frontend/95.html

Powered by yoyo苏ICP备15045725号