
方法一(网页上判断)
if (navigator.userAgent.match(/(iPhone|iPod|iPad);?/i)) { var loadDateTime = new Date(); window.setTimeout( function () { var timeOutDateTime = new Date(); if (timeOutDateTime - loadDateTime < 5000) { window.location = "要跳转的页面URL" ; } else { window.close(); } }, 25); window.location = "www://?param1=xxx¶m2=xxx " ;//与APP约定的一个协议URL } else if (navigator.userAgent.match(/androID/i)) { var state = null ; try { state = window.open( "www://?param1=xxx¶m2=xxx " , ‘_blank‘ );//与APP约定的一个协议URL } catch (e) {} if (state) { window.close(); } else { window.location = "要跳转的页面URL" ; } } 方法二
function testApp(url) { var timeout,t = 1000,hasApp = true ; setTimeout( function () { if (hasApp) { alert( ‘安装了app‘ ); } else { alert( ‘未安装app‘ ); } document.body.removeChild(ifr); },2000) var t1 = Date.Now(); var ifr = document.createElement( "iframe" ); ifr.setAttribute( ‘src‘ ,url); ifr.setAttribute( ‘style‘ , ‘display:none‘ ); document.body.appendChild(ifr); timeout = setTimeout( function () { var t2 = Date.Now(); if (!t1 || t2 - t1 < t + 100) { hasApp = false ; } },t); } 方法三(APP里判断)
var isAndroID = u.indexOf( ‘AndroID‘ ) > -1 || u.indexOf( ‘linux‘ ) > -1; @H_416_419@//androID终端或者uc浏览器 var isiOS = !!u.match(/\(i[^;]+;( U;)? cpu.+Mac OS X/); @H_416_419@//ios终端 if (isAndroID){ function androID(){ window.location.href = "www://?param1=xxx¶m2=xxx" ; @H_416_419@/***打开app的协议,有安卓同事提供***/ window.setTimeout( function (){ window.location.href = "http://" ; @H_416_419@/***下载app的地址***/ },2000); }; if (isiOS){ function ios(){ var ifr = document.createElement( "iframe" ); ifr.src = "www://?param1=xxx¶m2=xxx" ; @H_416_419@/***打开app的协议,有ios同事提供***/ ifr.style.display = "none" ; document.body.appendChild(ifr); window.setTimeout( function (){ document.body.removeChild(ifr); window.location.href = "http://" ; @H_416_419@/***下载app的地址***/ },2000) }; } 总结 以上是内存溢出为你收集整理的JS判断手机端是否安装某应用全部内容,希望文章能够帮你解决JS判断手机端是否安装某应用所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)