单击链接打开APP,或自动跳转下载页

本文探讨了手机应用内如何实现访问链接自动打开客户端的功能,若客户端未安装则提供下载页面或链接,通过iframe方式尝试打开并设置1秒内未打开的跳转逻辑。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

手机等移动终端上的页面中,访问链接(使用APP的自定义协议)自动打开相应的APP,若未安装该APP,则重定向至下载页面或下载链接。

网上找的不够完整,参考了下淘宝,立贴备忘。


<a href="javascript:;" id="opener" >打开客户端</a>
<script type="text/javascript">
var timer, ifr;
document.getElementById('openApp').onclick = function(e){
// 通过iframe的方式试图打开APP,如果能正常打开,会直接切换到APP,并自动阻止a标签的默认行为
ifr = document.createElement('iframe');
ifr.src = 'myapp://xxxx'; //APP定义的打开协议
ifr.style.display = 'none';
document.body.appendChild(ifr);

//1秒内未打开APP,则跳转下载等。
timer = window.setTimeout(function(){
location.href = "http://下载链接/...";
}, 1000);
}

//摘自“淘宝”,打开APP后,自动移除下载跳转
window.onblur = function(){
if(timer){
clearTimeout(timer);
timer = null;
}

if(ifr){
document.body.removeChild(ifr);
}
}
</script>


大部分代码摘自http://blog.woodbunny.com/tb.php?sc=2aab02&id=140
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值