js判断设备,跳转app应用、android市场或者AppStore
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" >
<title>Insert title here< /title>
</head>
<body>
<script>
//js判断是否是苹果设备
function checkIsAppleDevice() {
var u = navigator.userAgent, app = navigator.appVersion;
var ios = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);
var iPad = u.indexOf('iPad') > -1;
var iPhone = u.indexOf('iPhone') > -1 || u.indexOf('Mac') > -1;
if (ios || iPad || iPhone) {
return true;
} else {
return false;
}
}
//js判断是否为Android设备
function checkIsAndroidDevice() {
var u = navigator.userAgent;
if (u.indexOf('Android') > -1 || u, indexOf('Adr) > -1 ){
return true;
}else{
return false;
}
}
//判断设备,跳转应用市场
if (checkIsAppleDevice()) {
window.location.href = "https://itunes.apple.com/us/app/998dian-wan-cheng/id1135278767?mt=8";//跳转到AppStore或者Android应用市场
} else {
window.location.href = "http://mbdownload.998dw.net/998dwcPackage/android/demo.apk";//打开apk
} //js判断终端访问
function checkIsTerminal() {
var u = navigator.userAgent;
trident = u.indexOf('Trident') > -1;//IE内核
presto = u.indexOf('Presto') > -1;//opera内核
webkit = u.indexOf('AppleWebKit') > -1;
//苹果。谷歌内核
gecko = u.indexOf('Gecko') > -1;//火狐内核
mobile = !!u.match(/AppleWebjit.*Mobile,*/);//移动终端
android = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1;//Android终端
ios = !!u.match(/\(i[^;]( U;)? CPU.+Mac OS X/);//ios终端
iphone = u.indexOf('iPhone') > -1;//iPhone或者QQHD浏览器
ipad = u.indexOf('iPad') > -1;//iPad
webapp = u.indexOf('Safari') == -1;//web应用程序没有头部与底部
weixin = u.indexOf('MicroMessenger') > -1;//微信
qq = u.match(/\sQQ/i) == "qq";//QQ
//使用方法
if (browser.versions.trident) { alert("Is IE"); }//判断是否为IE内核
if (browser.versions.webkit) { alert(Is Webkit); }//判断是否为webKit内核
if (browser.versions.mobile || browser.versions.android || browser.versions.ios) { alert("移动端"); }//判断是否为移动端
//检测浏览器语音
currentLang = naviagtor.language;//判断除ie外其他浏览器使用语音
if (!currentLang) {//判断IE浏览器语音
currentLang = navigator.browserLanguage;
}
//ios调转
if (checkIsAppleDevice()) {
window.location.href = "https://itunes.apple.com/us/app/998dian-wan-cheng/id1135278767?mt=8";//跳转到AppStore
} else {
window.location.href = "http://mbdownload.998dw.net/998dwcPackage/android/DWC_GW.apk";//打开apk
}
if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {
//alert(navigator.userAgent);
window.location.href = "iPhone.html";
} else if (/(Android)/i.test(navigator.userAgent)) {
//alert(navigator.userAgent);
window.location.href = "Android.html";
} else {
window.location.href = "pc.html";
}
}
</script>
</body>
</html>
js判断设备,跳转app应用、android市场或者AppStore的更多相关文章
- JS判断设备终端(PC,iPad,iPhone,android,winPhone)和浏览器
JS判断设备终端(PC,iPad,iPhone,android,winPhone)和浏览器 var ua = navigator.userAgent; var browser = {}, weixin ...
- JS判断客户端是否是iOS或者Android或者ipad(三)
* * @function: 判断浏览器类型是否是Safari.Firefox.ie.chrome浏览器 * @return: true或false * */ function isSafa ...
- js 判断当前操作系统是ios还是android还是电脑端
js判断客户端是否是IOS或者是Android //如果返回true 则说明是Android function is_weixin() { var ua = window.navigator.user ...
- JS判断客户端是否是iOS或者Android或者ipad(二)
js判断客户端是IPAD和iphone 多了就不说了,直接上代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 funct ...
- JS判断设备的类型
利用JS判断浏览器的用户代理,从而获得设备类型.利用这个方法可以获得用户的设备是移动设备还是PC设备. JS代码如下: function browerType() { ...
- JS判断客户端是否是iOS或者Android或者ipad(一)
通过判断浏览器的userAgent,用正则来判断是否是ios和Android客户端.代码如下<script type="text/javascript"> var u ...
- js判断设备(转)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- JS 判断设备来源
1.js代码判断当前设备: function deviceType(){ var ua = navigator.userAgent; var agent = ["Android", ...
- js判断本地是否安装app
var ua = navigator.userAgent.toLowerCase(); 1.判断是否是微信 function isWeixinBrowser() { return (/micromes ...
随机推荐
- QTableWidget懒加载(动态加载)实现
在QTableWidget中加入一行行的数据,如果数据数量过多,滚动起来就会卡顿,插入数据时也会影响性能,为了解决这个问题,采用懒加载的方式,只在界面上显示10几条数据,填满界面.同时增加而外的竖直滚 ...
- 0.4 IDEA报错以及解决方式
0.4 IDEA报错以及解决方式一.端口被占用 [WARNING] FAILED SelectChannelConnector@0.0.0.0:8080: java.net.BindException ...
- HR问“你目前有几个offer”,聪明人会怎么说?
点击上方“程序员江湖”,选择“置顶或者星标” 你关注的就是我关心的! 一个朋友和我聊天,说起自己最近被虐的面试经历.他985毕业,工作3年,看中了一家月薪1.5万的工作,准备跳槽.虽然在北京不算高 ...
- 构建 JVM(HotSpot) 源码调试环境(OpenJDK8)
原本想在 Windows 下编译调试,但过程中遇到了诸多错误(老是报路径错误...),最后只好放弃. 此次记录调试的方法为 CentOS7 上编译,Windows 上使用 Clion 远程调试(也可直 ...
- MVC和MVP区别
从这幅图可以看到,我们可以看到在MVC里,View是可以直接访问Model的!从而,View里会包含Model信息,不可避免的还要包括一些业务逻辑. 在MVC模型里,更关注的Model的不变,而同时有 ...
- WPF 键盘全局接收消息
1.========================================================================== 在c#中怎样禁用鼠标左键的使用,其实我们可以通 ...
- 反编译中的 匿名内部类 this.val$的问题【我改】
转: 匿名内部类 this.val$的问题 一天偶尔在网上找到一个jar包,反编译后出现了如下的代码: public void defineAnonymousInnerClass(String nam ...
- 五十六:flask文件上传之上传文件与访问上传的文件
实现上传文件 1.在form表单中,需指定enctype="multipart/form-data",且文件上传的input标签type="file"2.在后台 ...
- kubernetes排错系列:(一)、机房搬迁导致的节点NotReady
说下背景: 上周六机房进行搬迁,我所在的网段的机器都重启了一遍.重启之后kubernetes集群不正常.如下 排查过程: # 查看节点信息 kubectl describe nodes cbov10- ...
- 数据库高级数据库学习--上机练习7(Transact-SQL 函数定义和调用)
上机练习7 在Transact SQL中,有一类特殊的自定义函数,其返回值为一张表,该类自定义函数被称作内嵌(联)表值函数,其基本语句格式如下: CREATE FUNCTION函数名称[( {@参数名 ...