判断当前终端是手机还是pc端并进行不同的页面跳转
Posted 贺小鸣
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了判断当前终端是手机还是pc端并进行不同的页面跳转相关的知识,希望对你有一定的参考价值。
判断当前设备(终端)是手机还是pc端并进行不同的页面跳转
DEMO 1
<script type="text/javascript"> function browserRedirect() { var sUserAgent= navigator.userAgent.toLowerCase(); var bIsIpad= sUserAgent.match(/ipad/i) == "ipad"; var bIsIphoneOs= sUserAgent.match(/iphone os/i) == "iphone os"; var bIsMidp= sUserAgent.match(/midp/i) == "midp"; var bIsUc7= sUserAgent.match(/rv:1.2.3.4/i) == "rv:1.2.3.4"; var bIsUc= sUserAgent.match(/ucweb/i) == "ucweb"; var bIsandroid= sUserAgent.match(/android/i) == "android"; var bIsCE= sUserAgent.match(/windows ce/i) == "windows ce"; var bIsWM= sUserAgent.match(/windows mobile/i) == "windows mobile"; if (bIsIpad || bIsIphoneOs || bIsMidp || bIsUc7 || bIsUc || bIsAndroid || bIsCE || bIsWM) { window.location.href= ‘m.html‘; } else { // window.location= ‘‘; } } browserRedirect();//调用自身,页面一打开就开始跳转 </script>
DEMO 2
<script type="text/javascript"> (function(){ var reWriteUrl = function(url){ if(url){ var Splits = url.split("/"),siteName=window.location.pathname; if(typeof siteName!=="undefined"){ return "http://m.jb51.net"+siteName; } } }; if(/Android|webOS|iPhone|iPad|Windows Phone|iPod|BlackBerry|SymbianOS|Nokia|Mobile/i.test(navigator.userAgent)){ var url=window.location.href; var pathname=window.location.pathname; if(url.indexOf("?mobile")<0){ try{ window.location.href=reWriteUrl(url); }catch(e){} } }; })(); </script>
DEMO 3
//腾讯网的适配代码 <script type="text/javascript"> var browser = { versions : function() { var u = navigator.userAgent, 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(‘Linux‘) > -1, //android终端或者uc浏览器 iPhone : u.indexOf(‘iPhone‘) > -1 || u.indexOf(‘Mac‘) > -1, //是否为iPhone或者QQHD浏览器 iPad: u.indexOf(‘iPad‘) > -1, //是否iPad webApp : u.indexOf(‘Safari‘) == -1, //是否web应该程序,没有头部与底部 google:u.indexOf(‘Chrome‘)>-1 }; }(), language : (navigator.browserLanguage || navigator.language).toLowerCase() } document.writeln("语言版本: "+browser.language); document.writeln(" 是否为移动终端: "+browser.versions.mobile); </script> //其他的适配代码(后缀名为.js 并引用至网页) <script type="text/javascript"> //平台、设备和操作系统 var system = { win: false, mac: false, xll: false, ipad:false }; //检测平台 var p = navigator.platform; system.win = p.indexOf("Win") == 0; system.mac = p.indexOf("Mac") == 0; system.x11 = (p == "X11") || (p.indexOf("Linux") == 0); system.ipad = (navigator.userAgent.match(/iPad/i) != null)?true:false; //跳转语句,如果是手机访问就自动跳转到" "里的页面 if (system.win || system.mac || system.xll||system.ipad) { } else { window.location.href = "此处填写你的链接地址"; } </script>
以上是关于判断当前终端是手机还是pc端并进行不同的页面跳转的主要内容,如果未能解决你的问题,请参考以下文章