使用iOS 11在野生动物园中强制打开链接

时间:2018-07-04 09:17:32

标签: javascript ios html5 safari webrtc

我试图在iPhone中强行打开一个到野生动物园的链接,但我无法这样做。

所以我的要求是我正在使用 WebRTC的 getUserMedia从iPhone摄像头访问视频,并且使用Safari可以正常运行,但是当我尝试在Chrome {{1 }}无效。我也在chrome中尝试了{strong> WebRTC 的this示例,但无法正常工作。

现在,我想打开始终与Safari通过电子邮件共享的链接。

我尝试了此链接,但它们不起作用-

Force link to open in mobile safari from a web app with javascript

此外,在Safari URL方案不起作用的情况下,也无法使用它。

任何建议或帮助都将受到高度赞赏。

1 个答案:

答案 0 :(得分:0)

我找到了答案!从这里https://gist.github.com/kylebarrow/1042026

此脚本位于头部

<script>
// Mobile Safari in standalone mode
if(("standalone" in window.navigator) && window.navigator.standalone){

    // If you want to prevent remote links in standalone web apps opening Mobile Safari, change 'remotes' to true
    var noddy, remotes = false;

    document.addEventListener('click', function(event) {

        noddy = event.target;

        // Bubble up until we hit link or top HTML element. Warning: BODY element is not compulsory so better to stop on HTML
        while(noddy.nodeName !== "A" && noddy.nodeName !== "HTML") {
            noddy = noddy.parentNode;
        }

        if('href' in noddy && noddy.href.indexOf('http') !== -1 && (noddy.href.indexOf(document.location.host) !== -1 || remotes))
        {
            event.preventDefault();
            document.location.href = noddy.href;
        }

    },false);
}
</script>

和链接的标准HTML

<a href="http://extneral" target="_blank">your link</a>

这样,Web应用程序下的本地链接仍会在同一窗口中打开,但外部http://链接将在Safari中打开