您的位置:首页 > 移动开发 > 微信开发

js识别安卓和ios及pc端,以及解决微信的屏蔽

2016-02-16 18:18 519 查看
这个功能其实主要针对下载功能来说的,

安卓下载地址肯定和ios下载地址不一样,

如何在不同设备访问下载地址时就能根据用户的设备进行相应的跳转。

同时,微信访问的地址如果是下载地址的话,微信本身是会屏蔽跳转的。

需要识别微信,并给出提示用其他浏览器打开此网址。

代码很简单。完整代码如下:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><title>自动识别设备</title>
<meta content="text/html; charset=unicode" http-equiv=Content-Type>
<meta name=viewport content="width=device-width, initial-scale=1.0">
<meta name=GENERATOR content="MSHTML 11.00.9600.17496">
<style>
*{  margin: 0;  padding: 0;  }
body{  background: #FFFFFF;  }
img{display: block;width: 100%;vertical-align: middle;}
</style>
<script>
function detectOS() {
var osUserAgent = navigator.userAgent.toLowerCase();
if (osUserAgent.indexOf("iphone") > -1 || osUserAgent.indexOf("ipad") > -1 || osUserAgent.indexOf("ipod") > -1) {
if (osUserAgent.indexOf("micromessenger") > -1) {
return "wechat";
}
//alert("注意:只限越狱用户可安装");
top.location.href = 'http://www.apple.com/';
return "iphone";
}
if (osUserAgent.indexOf("android") > -1 || osUserAgent.indexOf("adr") > -1) {
if (osUserAgent.indexOf("micromessenger") > -1) {
return "wechat";
}
top.location.href = 'http://www.baidu.com';
return "android";
}
if (osUserAgent.indexOf("win") > -1) {
top.location.href = 'http://www.baidu.com';
return "windows";
}
return osUserAgent;
}
detectOS();
</script>
</head>
<body>
<p><img src="http://img.m.duoku.com/cimages/img/20444/20444.png" /></p>
</body>
</html>


三个if语句实现查询:ios、Android、还是win(pc) ,

在 ios和Android的语句中加入了

if (osUserAgent.indexOf("micromessenger") > -1) {
return "wechat";
}
验证是否是在微信中打开的,如果不需要此功能可以删去。

top.location.href = 'http://www.apple.com/';即为相应设备的跳转地址。
最后 body里面有一张图片,当为微信访问时,显示此图片,图片内容为提示用其他浏览器打开。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: