jQuery .load 浏览器缓存覆盖正文 class 转换
jQuery .load browser cache overrides body class transitions
我的 .load ajax 函数:
1) 点击link
2) 在动画 css 转换时加载请求的页面(正文 add/remove class)
3) 如果页面请求加载速度快于 400 毫秒,它知道在删除正文 class 和显示页面
之前等待
这在我的本地开发环境中完美运行。但是当在实时服务器上时,ajax 页面缓存会覆盖正文 class 转换并快速加载顶部的页面,忽略上述 (3) 中的计时器。
我发现的修复是 $.ajaxSetup({ cache: false });它向 url 添加一个字符串,因此浏览器认为它是一个独特的页面...丑陋。
还有哪些其他可行的解决方法?我可以在加载每个页面之前等待 400 毫秒,但这很慢而且不专业:)
非常感谢。
蒂姆
以及修复...
在您的 .htaccess 中添加:
<filesMatch "\.(html|php|js|css)$">
FileETag None
<ifModule mod_headers.c>
Header unset ETag
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</ifModule>
</filesMatch>
强制 apache 缓存不存储基本(列出的)文件。
呸
我的 .load ajax 函数:
1) 点击link
2) 在动画 css 转换时加载请求的页面(正文 add/remove class)
3) 如果页面请求加载速度快于 400 毫秒,它知道在删除正文 class 和显示页面
之前等待这在我的本地开发环境中完美运行。但是当在实时服务器上时,ajax 页面缓存会覆盖正文 class 转换并快速加载顶部的页面,忽略上述 (3) 中的计时器。
我发现的修复是 $.ajaxSetup({ cache: false });它向 url 添加一个字符串,因此浏览器认为它是一个独特的页面...丑陋。
还有哪些其他可行的解决方法?我可以在加载每个页面之前等待 400 毫秒,但这很慢而且不专业:)
非常感谢。 蒂姆
以及修复...
在您的 .htaccess 中添加:
<filesMatch "\.(html|php|js|css)$">
FileETag None
<ifModule mod_headers.c>
Header unset ETag
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</ifModule>
</filesMatch>
强制 apache 缓存不存储基本(列出的)文件。
呸