【问题标题】:jquery/javascript caching questionjquery/javascript 缓存问题
【发布时间】:2010-02-14 18:44:13
【问题描述】:

我想知道 - 在我的网络中使用 jQuery(或任何其他 javascript 包括)时, 浏览器会在所有页面第一次下载后缓存它(我假设是)还是每次都下载它?

2、当用户退出浏览器并再次启动时(用于加载我的网站),jquery js 文件是否仍会被缓存,还是会再次完全下载?

谢谢

【问题讨论】:

  • 您可能会考虑仔细阅读您的问题并选择答案,您将更有可能获得回复。

标签: javascript jquery


【解决方案1】:

这取决于浏览器和服务器的设置方式。查看服务器连同文件一起发送的标头(您可以使用Firebug 之类的工具来查看标头)。一个好主意是使用 google 托管的 jQuery 文件,因为许多其他网站(包括 stackoverflow)使用相同的文件。然后浏览器可以缓存该文件,并且永远不会从您的服务器下载它。 This page 有一个由 google 托管的文件列表,this page 解释了如何正确设置您的服务器以(告诉您的浏览器)缓存文件。

【讨论】:

    【解决方案2】:

    1:是的,浏览器缓存了所有的 jscript/css 包含

    2:如果用户没有清除他/她的缓存。是的,它仍然会在浏览器的缓存中,即使在关闭并重新打开它之后也是如此。

    【讨论】:

      【解决方案3】:

      如果您的网络服务器使用适当的 expires 标头为 jquery.js 提供服务,那么是的,浏览器会缓存它。

      http://developer.yahoo.com/performance/rules.html#expires

      【讨论】:

        【解决方案4】:
        1. 是的,脚本将与 CSS 文件和图像一起在页面视图之间缓存。

        2. 一般来说也是。缓存通常在浏览器重新启动之间保持。

        【讨论】:

          【解决方案5】:

          它通常不会再次下载,但是除非您的服务器明确告诉浏览器将其缓存一段时间,否则它将在每个页面加载时发送一个请求,询问“jquery.js 是否已更新?”这几乎和重新下载一样慢。

          您可以使用Google's Page SpeedYahoo's YSlow 测试它在您的网站上的工作方式。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2014-05-15
            • 2013-02-18
            • 2012-01-14
            • 2016-09-01
            • 2012-08-29
            • 2012-08-29
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多