【问题标题】:how to call a function when user clears the browser cache用户清除浏览器缓存时如何调用函数
【发布时间】:2015-11-01 01:49:15
【问题描述】:

我在 AngularJS 中创建了一个应用程序,该应用程序在我的应用程序中也运行良好我使用了类似于在

中使用的会话管理

http://plnkr.co/edit/Mvrte4?p=info

//set the browser session, to avoid relogin on refresh
$window.sessionStorage["userInfo"] = JSON.stringify(loginData);

会话管理工作正常,但问题是说用户清除缓存,我想在用户点击任何链接之前自动触发一个功能,所以工作就像用户自动清除浏览器缓存登录弹窗立即弹出。

谁能告诉我一些解决方法

【问题讨论】:

    标签: javascript html angularjs caching browser-cache


    【解决方案1】:

    您可以使用 setInterval 并检查 sessionStorage 是否为空。

    setInterval(function(){
       if (typeof $window.sessionStorage["userInfo"] == 'undefined'){
         console.log("SHOW POPUP");
       }
    },100);
    

    【讨论】:

    • 但这将在几秒钟内连续运行.........实际上我只想在用户清除浏览器缓存时触发一个功能......我们可以使用 $观看浏览器缓存类似的东西
    • 如果用户清除缓存会触发 $watch,我会感到非常惊讶。
    • 我认为你不能在清理缓存事件中添加观察者:S
    • 这只是一个猜测.....不知道它是否可行,如果没有,我们可以检测到用户何时清除缓存(不使用任何 setItervals)
    • 创建一个服务来拦截你的每一次 ng-click 并在每次用户点击某物时检查存储大小? ng-click="checkCookies(url) 或许?
    猜你喜欢
    • 2010-11-05
    • 1970-01-01
    • 1970-01-01
    • 2017-04-06
    • 1970-01-01
    • 2013-07-17
    • 2021-05-05
    • 1970-01-01
    • 2011-10-23
    相关资源
    最近更新 更多