jQuery   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了jQuery .get缓存工作得太好了?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用jQuery .get()函数加载模板文件,然后通过定位特定的DOM元素将加载的 HTML显示页面的一部分中.它运作良好,但我最近意识到的原因使我感到困惑的是它正在缓存我的模板文件屏蔽我所做的更改.

别误会我的意思……我喜欢和下一个人一样的缓存.我希望它在客户端缓存和服务器上的文件之间没有时间戳差异时进行缓存.然而,这不是正在发生的事情.为了使它更奇怪…使用相同的功能加载模板…一些模板文件正在加载更新而其他模板文件没有(更喜欢缓存版本而不是最近的更改).

下面是我使用的加载功能.

function LoadTemplateFile ( DOMLOCATIOn,templateFile,addEventsFlag ) {
    $.get( templateFile,function (data) {
        $( DOMLOCATIOn ).html(data);
    });
}

任何帮助将不胜感激.

新细节:
我一直在做一些调试,现在看到返回到成功函数的“数据”变量确实有更新的信息,但由于我尚不清楚插入DOM的原因是旧版本.如何发生这种情况现在已成为我的问题.

解决方法

您可以在jQuery.get()调用中将缓存设置为off.有关cache:false选项的详细信息,请参阅 jQuery.ajax() doc.有关缓存如何工作的详细信息是特定于浏览器的,因此我认为您无法控制其工作方式,无论是开启还是关闭任何给定的调用.

仅供参,当您关闭缓存时,jQuery会通过在URL的末尾附加一个唯一的时间戳参数来绕过浏览器缓存,这使得它与之前的任何URL都不匹配,因此没有缓存命中.

您还可以控制服务器上的缓存生存期和其他几个缓存参数,这些参数将设置各种http标头,指示浏览器允许哪种类型的缓存.在开发应用程序时,您可能希望完全缓存.对于部署,我建议你想要它,然后当你修改你的应用程序时,最安全的处理缓存的@L_@R_489_11239@_22@是稍微改变你的URL,以便你的URL的新版本不同.这样,您总能获得最大缓存,但用户也会立即获得新版本.

大佬总结

以上是大佬教程为你收集整理的jQuery .get缓存工作得太好了?全部内容,希望文章能够帮你解决jQuery .get缓存工作得太好了?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。