相关疑难解决方法(0)

如何在所有浏览器中控制网页缓存?

我们的调查向我们表明,并非所有浏览器都以统一的方式尊重http缓存指令.

出于安全原因,我们不希望在我们的应用程序某些网页缓存,有史以来,通过Web浏览器.这必须至少适用于以下浏览器:

  • Internet Explorer 6+
  • Firefox 1.5+
  • Safari 3+
  • Opera 9+

我们的要求来自安全测试.从我们的网站注销后,您可以按后退按钮查看缓存页面.

https caching http http-headers

1474
推荐指数
17
解决办法
88万
查看次数

如何检测浏览器后退按钮事件 - 跨浏览器

你如何明确地检测用户是否按下了浏览器中的后退按钮?

如何使用#URL系统在单页Web应用程序中强制使用页内后退按钮?

为什么地球上没有浏览器按钮触发他们自己的事件!?

javascript cross-browser back single-page-application

188
推荐指数
11
解决办法
42万
查看次数

Ajax,后退按钮和DOM更新

如果javascript修改了页面A中的DOM,则用户导航到页面B,然后点击返回按钮返回页面A.对页面A的DOM的所有修改都将丢失,并且向用户显示最初从服务器检索的版本.

它在stackoverflow,reddit和许多其他流行的网站上以这种方式工作.(尝试在此问题中添加测试评论,然后导航到不同的页面并点击返回按钮返回 - 您的评论将"消失")

这是有道理的,但一些网站(apple.com,basecamphq.com等)在某种程度上迫使浏览器为用户提供最新的页面状态.(转到http://www.apple.com/ca/search/?q=ipod,单击顶部的"下载"链接,然后单击"返回"按钮 - 将保留所有DOM更新)

来自哪里的不一致?

javascript ajax firefox

112
推荐指数
2
解决办法
3万
查看次数

JavaScript或jQuery浏览器后退按钮点击检测器

有人可以分享经验/代码我们如何检测浏览器后退按钮点击(对于任何类型的浏览器)?

我们需要满足所有不支持HTML5的浏览器

javascript jquery back-button

42
推荐指数
6
解决办法
17万
查看次数

JavaScript - bfcache/pageshow事件 - event.persisted总是设置为false?

在标准的Java/SpringMVC/JSP/jQuery web-app中,我试图检测"Back"(或history.go(-1))事件,以便刷新(AJAX)摘要组件/面板内容时我返回到一个页面(我们可以在其中更改摘要组件显示的后端数据).

我在JavaScript中尝试了以下内容(关于StackExchange上的一些帖子,重新如何实现这一点):

<script type="text/javascript">
$(document).ready(function() {
    window.onpageshow = function(event) {
        console.log("Event:");
        console.dir(event);
        if (event.persisted) {
            alert("non-jQuery - back to page - loaded from bfcache");
        } else {
            alert("non-jQuery - loaded page from server");
        }
    };
    $(window).on("pageshow", function(event){
        console.log("Event:");
        console.dir(event);
        if (event.originalEvent.persisted) {
            alert("jquery - back to page - loaded from bfcache");
        } else {
            alert("jquery - loaded page from server");
        }
    });
});
</script>
Run Code Online (Sandbox Code Playgroud)

我正在运行OpenSUSE Linux并尝试使用FireFox和Chrome(最新版本),但每次将事件的persisted属性设置为false(我可以在JavaScript控制台中看到这一点,以及从上面的代码弹出的警报).每次,我的意思是,无论是从服务器加载还是通过后退按钮(或"后退"链接)再次显示.

我的目的是进行AJAX调用,如果通过"后退"按钮或history.go(-1)调用显示页面,则使用服务器的更新数据重新加载摘要组件/面板.

我也试过设置一个卸载处理程序(什么也不做),以防止页面被放入bfcache,但它似乎仍然显示bf-cached版本,并且event.persisted(或event.originalEvent.persisted)设置为false …

javascript back-button pageshow

8
推荐指数
3
解决办法
1万
查看次数

SpringBoot,如何使用 application.properties 禁用缓存

我想做的是刷新后退键上的视图。这样我的用户就可以看到更新的页面。

所以我尝试通过添加以下内容来禁用缓存:

spring.resources.cache.cachecontrol.no-cache=true
Run Code Online (Sandbox Code Playgroud)

然而,这不起作用。

spring-mvc thymeleaf spring-boot vue.js

1
推荐指数
1
解决办法
5955
查看次数