繁体   English   中英

使用javascript:history.go(-1)时,iPhone Safari Web App在新窗口中打开链接

[英]iPhone Safari Web App opens links in new window when using javascript:history.go(-1)

我正在尝试在iPhone独立的Web应用程序中获取链接,以在Web应用程序内(而不是野生动物园)打开。

我发现该线程iPhone Safari Web App在新窗口中打开链接,这对我有很大帮助。 我用过rmarscher的答案

<script>(function(a,b,c){if(c in b&&b[c]){var d,e=a.location,f=/^(a|html)$/i;a.addEventListener("click",function(a){d=a.target;while(!f.test(d.nodeName))d=d.parentNode;"href"in d&&(d.href.indexOf("http")||~d.href.indexOf(e.host))&&(a.preventDefault(),e.href=d.href)},!1)}})(document,window.navigator,"standalone")</script>

我遇到的问题是我的应用使用带有javascript:history.go(-1)的链接时。 如果在单击history.go(-1)之后单击链接,它将在Safari中而不是在Web应用程序中打开。

有人可以看看代码,看看是否有解决此问题的方法吗?

不幸的是,如果该Web应用程序是在“应用程序模式”下使用的,那么它是从主页访问的,并且没有默认的Apple导航栏,那么JavaScript历史记录api将无法使用。 您必须使用“直接链接”并链接到实际页面。 您所拥有的脚本可以使您在有人以“应用程序模式”单击您网站上的链接而不是“外部”网站时,iOS仍会以“应用程序模式”打开链接。

“应用程序模式”也称为“独立模式”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM