山禾_Abel 2018-12-15 09:27 采纳率: 0%
浏览 376

如何一个html文件依次检测打开多个app?

问题:项目有多个app,app1,app2, 所使用的打开连接分别是

    url1 = app1://startapp1?...
    url2 = app2://startapp2?...

尝试的方案:

/* 两个跳转,隐藏一个*/
 <a href="app1://startapp1"
       id="button1">去关注</a>
  <a href="app2://startapp2?..." id="button2" style="visibility: hidden;"></a>

<script>
document.getElementById("button1").onclick = start1();

var downloadlink = "http://...";
function start1() {
    return function() {
        setTimeout(function() {
            document.getElementById("button2").onclick = button2click();
            document.getElementById("button2").click();
        },3000);
    }
}

function  button2click() {
                //console.log("button2 click");
        return function () {
            setTimeout(function () {
                window.location = downloadlink;
            },2000);
        }
    }
</script>   

然而,在没有安装app1,安装了app2的情况下, 始终无法弹出打开app2的提示。

是我对setTimeout的理解有问题吗?
还是setTimeout嵌套需要注意什么事情?但是通过打log是检测到button2click运行了的。
还是通过 javascript: a.click() 是打不开 app的?

  • 写回答

1条回答 默认 最新

  • 天际的海浪 2018-12-15 12:59
    关注

    如果没有安装app1,页面应该会跳转到一个类似“无法访问此网站”的错误页面。
    这样原来的页面就没有了,原来页面上的代码当然不会再执行了

    评论

报告相同问题?