【问题标题】:Show loading screen only once per session每个会话仅显示一次加载屏幕
【发布时间】:2020-10-08 22:04:24
【问题描述】:

我正在创建一个“伪加载屏幕”,一旦页面打开,它将在主页上显示一个完整的页面 div,几秒钟后会消失。

我需要弄清楚的是如何防止在用户单击网站上的另一个页面然后返回主页(使用返回按钮或返回主页的锚链接)后显示此加载屏幕。

基本上,我需要仅在会话期间用户第一次访问网站时显示加载器,并且仅在后续会话期间再次显示。

(如果在刷新主页时加载屏幕被隐藏并且如果用户在主页以外的页面上开始他们的会话时出现加载屏幕也是理想的)

我最好的猜测是,这将使用 localStorage 来实现,但我是 JS 新手,所以任何关于如何让它工作的建议都会很棒!

【问题讨论】:

    标签: javascript caching local-storage loading session-storage


    【解决方案1】:

    为了您的目的,您可以利用window 对象的sessionStorage 属性。显示加载屏幕后,您可以将此信息保存在sessionStorage。例如:

    sessionStorage.setItem('shown', true);
    

    当页面被渲染时,你可以检查加载屏幕是否已经显示:

    if (!sessionStorage.getItem('shown')) showScreen();
    

    只要浏览器打开,页面会话就会持续,并且在页面重新加载和恢复后仍然存在。你可以阅读more

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-04-25
      • 2013-06-05
      • 1970-01-01
      • 2020-06-09
      • 2015-03-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多