前言:我们在日常中应该经常碰到这样的场景,打开一个页面,可跳转到对应APP内打开,如果没有安装对应APP则会提示下载
正文:
前提条件:你得知道你的APP对应的打开协议,如贴吧APP,协议为:com.baidu.tieba:// ,微信的:weixin://
<!-- a标签点击打开的动作,在click事件中注册 --> <a href="javascript:;" id="openApp">贴吧客户端</a> <script type="text/javascript"> document.getElementById(‘openApp‘).onclick = function(e){ // 通过iframe的方式试图打开APP,如果能正常打开,会直接切换到APP,并自动阻止js其他行为 var ifr = document.createElement(‘iframe‘); ifr.src = ‘com.baidu.tieba://‘;//打开app的协议,由app同事提供,系统会识别的 ifr.style.display = ‘none‘; document.body.appendChild(ifr); window.setTimeout(function(){ document.body.removeChild(ifr); window.location.href = "https://itunes.apple.com/cn/app/id477927812"; //打开app下载地址,由app同事提供 },2000) }; </script>
此方法有些浏览器不兼容iframe,可以window.location的方法解决
<a href="javascript:;" id="openApp">贴吧客户端</a> <script type="text/javascript"> document.getElementById('openApp').onclick = function(e){ window.location.href = "com.baidu.tieba://"; window.setTimeout(function(){ window.location.href = "https://itunes.apple.com/cn/app/id477927812";//打开app下载地址,有app同事提供 },2000) }; </script>
参考博客:
【JS】点击页面判断是否安装app并打开,否则跳转下载的方法
http://www.mamicode.com/info-detail-1518140.html