本文介绍了强制链接从带有 javascript 的 Web 应用程序在移动 Safari 中打开的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在 iOS 网络应用中调用 window.open() 时,页面会在网络应用中打开,而不是在移动端 safari 中打开.

When calling window.open() in a iOS web app, the page opens in the web app instead of mobile safari.

如何强制网页在 mobile safari 中打开?

注意:不能使用直接的 链接.

Note: Using straight <a href> links is not an option.

推荐答案

这是可能的.使用 iOS5 独立网络应用测试:

This is possible. Tested with iOS5 stand-alone web app:

HTML:

<div id="foz" data-href="http://www.google.fi">Google</div>

JavaScript:

JavaScript:

document.getElementById("foz").addEventListener("click", function(evt) {
    var a = document.createElement('a');
    a.setAttribute("href", this.getAttribute("data-href"));
    a.setAttribute("target", "_blank");

    var dispatch = document.createEvent("HTMLEvents");
    dispatch.initEvent("click", true, true);
    a.dispatchEvent(dispatch);
}, false);

可以在这里测试:http://www.hakoniemi.net/labs/linkkitesti.html

这篇关于强制链接从带有 javascript 的 Web 应用程序在移动 Safari 中打开的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-12 19:13