js 經過瀏覽器直接打開應用程序(IOS,Android)並判斷瀏覽器內核

本功能主要用於手機端,若是手機未安裝該APP,則跳轉至下載頁面;不然,直接打開手機中的APP。javascript

<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 經過瀏覽器直接打開應用程序(IOS,Android)
(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

java

相關文章
相關標籤/搜索