网页封装iosAPP,超链接跳出浏览器问题

将手机网页封装成app也是行业中的一些基本操作,但是对于十分折腾人的ios而言,可能一个简单的app封装都没那么容易搞定,因为如果直接的网页封装,里面的所有超链接,都会在点击之后从app跳出,进入ios的浏览器。这对于用户而言是非常不好的体验。因为都是每个链接都跳到浏览器了,那封装的意义在哪里?所以我也搞不懂ios这种反人类操作是为了什么,反正安卓的封装就可以好端端的搞定。
所以,再次差评,垃圾ios毁我青春。

解决方案如下,在网站的全局js中或者全局头部加如下代码:

<script type="text/javascript">
if(("standalone" in window.navigator) && window.navigator.standalone){
var noddy, remotes = false;
document.addEventListener('click', function(event) {
noddy = event.target;
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>

具体的含义解释就是,监听整个页面的a标签点击事件,拦截默认的跳转,而是读取超链接的href属性,再通过js的形式进行跳转,这样就完全避免了ios封装内跳出的问题。

总之很操蛋。
u1.jpg

您的大名:
万水千山总是情,给个打赏行不行。 打赏
原创文章,作者:不暇,如若转载,请注明出处:https://www.ruletree.club/archives/1994/
青媚南塘:桃之夭夭,灼灼其华
« 上一篇 06-17
vue 简单实现左右翻页功能
下一篇 » 06-18

发表评论

已有 2 条评论

  1. 卑微页面仔VLv.1 说道:

    厉害厉害

  2. 蓝大富VLv.2 说道:

    我是来刷评论的,啦啦啦啦啦啦

作者信息

热门文章

标签TAG

热评文章