服务人员可以检测历史导航吗?

时间:2016-07-26 19:36:00

标签: service-worker

我有一个服务工作者,当主要内容在后台加载时显示启动画面。

不幸的是,这使得历史导航(例如,后退按钮)的体验变得更糟,因为闪屏失去了页面状态(例如,滚动位置)。

服务工作者是否有办法检测到FetchEvent是否用于历史记录导航?

1 个答案:

答案 0 :(得分:1)

我相信通过Request界面公开的FetchEvent对象将没有任何特定标识为由于历史记录导航的对象。例如,mode attribute最终将被设置为'navigate',这与您在导航后看到的值相同,因为除了后退按钮之外的其他内容。

isReload上有一个FetchEvent属性,但是service worker specification不遗余力地指出只刷新而不是历史导航会导致true 1}}值:

  

按下刷新按钮应视为重新加载   单击链接并按后退按钮不应该。行为   Ctrl + l的输入留给用户代理的实现。