原理:原理有兩個,第一:經過遊覽器(browser)判斷是不是手機;第二:經過訪問終端判斷是不是手機(userAgent);可是一般考慮到兼容性,須要這兩種原理同時使用;具體的實現以下:android
JS實現:ios
1 2 function checkBrowser(){ 3 var browser={ 4 versions:function(){ 5 var u = navigator.userAgent, app = navigator.appVersion; 6 return { 7 //移動終端瀏覽器版本信息 8 trident: u.indexOf('Trident') > -1, //IE內核 9 presto: u.indexOf('Presto') > -1, //opera內核 10 webKit: u.indexOf('AppleWebKit') > -1, //蘋果、谷歌內核 11 gecko: u.indexOf('Gecko') > -1 && u.indexOf('KHTML') == -1, //火狐內核 12 mobile: !!u.match(/AppleWebKit.*Mobile.*/)||!!u.match(/AppleWebKit/), //是否爲移動終端 13 ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/), //ios終端 14 android: u.indexOf('Android') > -1 || u.indexOf('Linux') > -1, //android終端或者uc瀏覽器 15 iPhone: u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1, //是否爲iPhone或者QQHD瀏覽器 16 iPad: u.indexOf('iPad') > -1, //是否iPad 17 webApp: u.indexOf('Safari') == -1 //是否web應該程序,沒有頭部與底部 18 }; 19 }(), 20 language:(navigator.browserLanguage || navigator.language).toLowerCase() 21 } 22 if( browser.versions.android || browser.versions.iPhone || browser.versions.iPad){ 23 window.location.href="http://m.studyofnet.com" 24 25 } 26 } 27 28