在 Safari 中, 有的页面右滑返回后会自动刷新一下, 而有的页面右滑返回后则不会(例如 V2EX), 这是什么原因?

2016-02-08 09:42:08 +08:00
 cbais7890
8763 次点击
所在节点    浏览器
13 条回复
huangtao728
2016-02-08 10:07:59 +08:00
ajax?
Livid
2016-02-08 10:09:25 +08:00
和页面占用的内存有关。页面占用的内存和图片多少及 DOM 复杂度有关。
maplerecall
2016-02-08 10:10:27 +08:00
猜测如果页面有 XHR 行为就会刷新…
huangtao728
2016-02-08 10:12:47 +08:00
@Livid
回复咋消失了两条?
jasontse
2016-02-08 10:15:23 +08:00
1G 内存不够该换 6s 了
Livid
2016-02-08 10:21:16 +08:00
@huangtao728 在技术话题下面,纯粹灌水的无意义回复会被删除,同时账号会被 Deactivate 。
mfaner
2016-02-08 10:50:23 +08:00
Back/Forward cache ,应该是这个吧,满足一些条件的话向前向后导航时就会从内存直接载入。没找到 Safari 的文档。
squid157
2016-02-08 11:46:58 +08:00
@Livid 感觉 V2EX 里面是添加回复之后 就无法退回
Exin
2016-02-08 13:09:00 +08:00
5s 下右滑会刷新(页面静止,能滚动不能点击,刷新之后才能点击
cbais7890
2016-02-08 13:22:02 +08:00
@jasontse 测试设备是 RMBP

@Livid 感觉在默认行为下, Safari 都是趋于使用自动缓存页面内容的策略来工作的, 可能某些内容会导致缓存内容失效而刷新页面, 但是不知道触发的具体内容是什么

@mfaner 根据你的关键词找到了几个文章, 应该算是浏览器的特性了

http://apple.stackexchange.com/questions/99860/doesnt-safari-cache-pages
http://stackoverflow.com/questions/8788802/prevent-safari-loading-from-cache-when-back-button-is-clicked
https://webkit.org/blog/427/webkit-page-cache-i-the-basics/
secondwtq
2016-02-08 18:54:03 +08:00
类似的问题我前段时间也遇到过,桌面平台下 Chrome 就不会, Safari 和 Firefox 都是这样。不过当时没深究
@mfaner 和 @cbais7890 提供的信息非常有用,感谢已发送
Cavolo
2016-02-08 22:05:46 +08:00
@squid157 Safari 的确有这个问题,滑动后退反复是同一个页面
loveuqian
2016-02-08 22:28:38 +08:00
我还以为是类似于 viewDidAppear 的机制

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/255801

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX