IE7 做得很好,但 IE8 不加载 javascript gallery 脚本 - 出了什么问题?

发布于 2024-10-11 12:55:11 字数 339 浏览 6 评论 0原文

我有一个 javascript galleria,它可以在每个现代浏览器中工作,甚至在 IE7 中也是如此。但是在 IE8 中,如果它加载..它不会显示画廊..但是如果我按 Ctrl + F5 它会进行硬重新加载,它会擦除​​缓存,最后会出现画廊..如果我只是重新加载页面..或者如果我使用相同的 Galleria 脚本转到另一个页面,问题又出现了..所以我需要 IE8 的硬重载脚本。

伪代码:

On Document Load

If user agent IE8 {
erase website cache
}

do normally continue webpage loading..

I have a javascript galleria which does work in every modern browser, even in IE7. But in IE8 if its load.. it does not show the gallery.. BUT if I press Ctrl + F5 it does a hard reload, it erase the cache and finally the galleria appears.. If I just reload the page.. or if I go to another page with the same galleria script, the problem comes again.. so I need a hard reload script for IE8.

Pseudo Code:

On Document Load

If user agent IE8 {
erase website cache
}

do normally continue webpage loading..

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

若言繁花未落 2024-10-18 12:55:11

问题不在客户端。问题是你的服务器。 IE 将积极缓存对 AJAX 请求的响应,除非服务器在响应中设置 Cache-Control: no-cache。清除浏览器中的缓存是错误的修复方法,因为服务器应该决定什么是当前的,什么不是。

因此,请更改服务器对您的请求的响应以包含正确的标头。

The problem isn't on the client side. The problem is your server. IE will aggressively cache responses to AJAX requests unless the server sets a Cache-Control: no-cache in the response. Clearing the cache in the browser is the wrong fix, because the server should decide what is current and what is not.

So change the server response to your request to include the correct headers.

天邊彩虹 2024-10-18 12:55:11

请参阅有关清除缓存的链接!
清除所有网站缓存吗?

see that link about clearing the cache!
Clear all website cache?

回梦 2024-10-18 12:55:11

伪造清除缓存的一种可能方法是将缓存破坏器附加到页面资源中的所有资源,例如

"test.js?cacheBuster=" + new Date())

这应该是最后的手段。

One possible way to fake a clear cache would be to attach a cache buster to all resources from a page your resources like

"test.js?cacheBuster=" + new Date())

This should be a last resort.

萝莉病 2024-10-18 12:55:11

使用 javascript 你将无法做到这一点。您可以做的是用服务器端语言编写代码,这样整个页面就不会被缓存。

Using javascript you won't be able to do this. What you can do is to write code in your server side language so that the entire page won't be cached.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文