Web 应用程序在 Safari 中打开链接,而不是在现有视图中打开链接
Web app opens link in Safari instead of inside the existing view
我已经在主页上添加了一个网络应用程序。
当我在快捷方式中打开应用程序时,它的外观与其他本机一致。 例如,典型的Safari标签栏消失了。网址栏处于隐藏状态。等
在主页上,我有许多标签和指向同一应用程序中其他页面的链接。 通常它们是这样的
<a class="content" href="/myapp/16270001">
<span class="name" style="word-wrap: break-word;">Test Link </span>
</a>
当我单击链接时,它将直接跳入 Safari 并打开 http://myapp.com/myapp/16270001,而不是在原始视图中打开。
如何使跟随链接操作保留在应用程序的视图中?
然后你添加到主屏幕网页,它成为一个独立的应用程序。您可以通过navigator.standalone
标志检查此状态是否为iOS。尝试 4 岁的 github gist。我用过它,它有效。您可以通过以下bower
使用它:
鲍尔安装 --保存 iOS 网络链接
附言我修改的脚本用于防止在 Safari 中以standalone
模式打开链接:
(function (standalone) {
if (!standalone) {
return;
}
document.addEventListener('click', function (e) {
var element = e.target,
href = '';
while (!/^(a|html)$/i.test(element.nodeName)) {
element = element.parentNode;
}
if (element.getAttribute) {
href = element.getAttribute('href');
if ('' !== href && '#' !== href && null !== href && (!element.protocol || element.protocol !== 'tel:')) {
e.preventDefault();
window.location = element.href;
}
}
}, false);
}(window.navigator.standalone));
相关文章:
- ng视图外的链接重定向到ng视图内的页面
- (阅读更多链接)到模式淡入淡出视图
- 如何在网格视图中每次单击按钮或链接时打开不同的新弹出窗口
- angularJS:如何打破模型和视图之间的链接
- 将视图链接到模型并将视图链接至控制器的代码位于何处
- 想要使用链接将数据发送到另一个视图
- 谷歌图表中的链接视图
- 单视图页面永久链接为空,带有铁路由器
- 链接安卓按钮和网络视图 - 可能
- Web 应用程序在 Safari 中打开链接,而不是在现有视图中打开链接
- 如何在网格视图中链接按钮的客户端单击事件上显示动态消息
- OpenLayers 3.13:通过链接两个视图来提供绑定To的问题
- 如何在 extjs5 视图模型中正确声明链接
- 如何在浏览器中而不是在 Web 视图中强制打开链接
- 如何处理主干视图中的异步链接模型
- 如何从 Web 窗体中的超链接显示 asp.net mvc 视图 asp.net
- 在股票浏览器中打开链接,而不是从 iframe 打开 Web 视图
- 网格视图中的超链接错误
- MVC3 :: 从详细信息视图导航表,而不是单击表中的详细信息链接
- 网格视图链接变成了javascript:__doPostBack