這個功能其實主要針對下載功能來講的,html
安卓下載地址確定和ios下載地址不同,android
如何在不一樣設備訪問下載地址時就能根據用戶的設備進行相應的跳轉。ios
同時,微信訪問的地址若是是下載地址的話,微信自己是會屏蔽跳轉的。windows
須要識別微信,並給出提示用其餘瀏覽器打開此網址。瀏覽器
代碼很簡單。完整代碼以下:微信
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 2 <html><head><title>自動識別設備</title> 3 <meta content="text/html; charset=unicode" http-equiv=Content-Type> 4 <meta name=viewport content="width=device-width, initial-scale=1.0"> 5 <meta name=GENERATOR content="MSHTML 11.00.9600.17496"> 6 <style> 7 *{ margin: 0; padding: 0; } 8 body{ background: #FFFFFF; } 9 img{display: block;width: 100%;vertical-align: middle;} 10 </style> 11 <script> 12 function detectOS() { 13 var osUserAgent = navigator.userAgent.toLowerCase(); 14 if (osUserAgent.indexOf("iphone") > -1 || osUserAgent.indexOf("ipad") > -1 || osUserAgent.indexOf("ipod") > -1) { 15 if (osUserAgent.indexOf("micromessenger") > -1) { 16 return "wechat"; 17 } 18 //alert("注意:只限越獄用戶可安裝"); 19 top.location.href = 'http://www.apple.com/'; 20 return "iphone"; 21 } 22 if (osUserAgent.indexOf("android") > -1 || osUserAgent.indexOf("adr") > -1) { 23 if (osUserAgent.indexOf("micromessenger") > -1) { 24 return "wechat"; 25 } 26 top.location.href = 'http://www.baidu.com'; 27 return "android"; 28 } 29 if (osUserAgent.indexOf("win") > -1) { 30 top.location.href = 'http://www.baidu.com'; 31 return "windows"; 32 } 33 return osUserAgent; 34 } 35 detectOS(); 36 </script> 38 </head> 39 <body> 40 <p><img src="http://img.m.duoku.com/cimages/img/20444/20444.png" /></p> 41 </body> 42 </html>
三個if語句實現查詢:ios、Android、仍是win(pc) ,app
在 ios和Android的語句中加入了iphone
if (osUserAgent.indexOf("micromessenger") > -1) { return "wechat"; }
驗證是不是在微信中打開的,若是不須要此功能能夠刪去。
top.location.href = 'http://www.apple.com/';即爲相應設備的跳轉地址。最後 body裏面有一張圖片,當爲微信訪問時,顯示此圖片,圖片內容爲提示用其餘瀏覽器打開。