js 通过浏览器直接打开应用程序(IOS,Android)并判断浏览器内核

Posted MeetU

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 通过浏览器直接打开应用程序(IOS,Android)并判断浏览器内核相关的知识,希望对你有一定的参考价值。

本功能主要用于手机端,如果手机未安装该APP,则跳转至下载页面;否则,直接打开手机中的APP。

<div style="position:absolute; top:84%; left:24%; z-index:8;">
<a id="J-call-app" href="javascript:;"><img src="image/but01.jpg"></a>
<input id="J-download-app" type="hidden" name="storeurl" value="http://app.jiaxidezhou.com/jxmj.apk">
</div>

 

<script>
//js 通过浏览器直接打开应用程序(iosandroid
(function(){
var ua = navigator.userAgent.toLowerCase();
var t;
var config = {
/*scheme:必须*/
scheme_IOS: ‘jiaximajiang://‘,
scheme_Adr: ‘jiaximajiang://splash‘,
download_url: document.getElementById(‘J-download-app‘).value,
timeout: 600
};
function openclient() {
var startTime = Date.now();

var ifr = document.createElement(‘iframe‘);


ifr.src = ua.indexOf(‘os‘) > 0 ? config.scheme_IOS : config.scheme_Adr;
ifr.style.display = ‘none‘;
document.body.appendChild(ifr);

var t = setTimeout(function() {
var endTime = Date.now();

if (!startTime || endTime - startTime < config.timeout + 200) { 
window.location = config.download_url;
} else {

}
}, config.timeout);

window.onblur = function() {
clearTimeout(t);
}
}
window.addEventListener("DOMContentLoaded", function(){
document.getElementById("J-call-app").addEventListener(‘click‘,openclient,false);

}, false);
})()
//JS判断微信、QQ内置浏览器,useragent
window.onload = function (){
var ua = navigator.userAgent.toLowerCase();
var div = document.getElementById("here");
if(ua.match(/MicroMessenger/i)==‘micromessenger‘ || ua.match(/QQ\//i) == "qq/") {
div.style.display = "block";

}else{
div.style.display = "none";
}
}
</script>

 

[参考]http://blog.csdn.net/coslay/article/details/46889051#t1



以上是关于js 通过浏览器直接打开应用程序(IOS,Android)并判断浏览器内核的主要内容,如果未能解决你的问题,请参考以下文章

2018 学习 之 混合开发

微信内点击链接或扫描二维码直接打开手机默认浏览器打开指定网页

如何用js在pc页面不打开新页面就直接下载PDF的方式

ios自带浏览器safari js返回上一页,页面按钮置灰不能点击

打开 Facebook 应用的“点赞”按钮

根据浏览器内核判断是web/iOS/android/ipad/iphone 来打开不同的网站或页面