jQuery/JavaScript缓存问题

7
我想知道,在我的网站中使用jQuery(或任何其他JavaScript包含)时,浏览器是否会在第一次下载后为所有页面缓存它(我假设是),还是每次都会下载它?
其次,当用户退出浏览器并重新启动它以加载我的网站时,jQuery js文件是否仍将被缓存,还是会完全重新下载?
谢谢

你可以考虑仔细审查你的问题并选择答案,这样更有可能得到回复。 - Whit
5个回答

9
这取决于浏览器以及您的服务器设置。查看服务器与文件一起发送的标头(您可以使用像Firebug这样的工具查看标头)。一个好主意是使用由Google托管的jQuery文件,因为许多其他网站(包括stackoverflow)使用相同的文件。然后浏览器可以缓存该文件并且不会从您的服务器下载它。此页面列出了由Google托管的文件列表,此页面解释了如何正确设置您的服务器以(告诉您的浏览器)缓存文件。

3
  1. 是的,脚本、CSS文件和图片都会在页面视图之间被缓存。

  2. 通常情况下,缓存也会在浏览器重启之间保持。


3

1: 是的,浏览器会缓存所有jscript/css包含文件。

2: 如果用户没有清除他/她的缓存。即使关闭并重新打开浏览器,它仍将存在于浏览器的缓存中。


3

2
通常情况下,它不会再次被下载,但是除非您的服务器明确地告诉浏览器缓存一段时间,否则它将在每个页面加载时发送一个请求,询问“jquery.js是否已更新?”,这几乎与重新下载相同慢。
您可以使用Google的Page SpeedYahoo的YSlow测试它在您的网站上的工作方式。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接