首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >理解jQuery $.getScript()

理解jQuery $.getScript()
EN

Stack Overflow用户
提问于 2012-01-19 16:55:06
回答 5查看 14.1K关注 0票数 10

我使用getScript动态加载插件:

代码语言:javascript
复制
$.getScript('js/code.photoswipe.jquery-3.0.4.min.js', function () {
   //do magic
});
  1. 如何禁用缓存中断?目前,它在末尾生成数字: js/code.photoswipe.jquery-3.0.4.min.js?_=1326992601415,我看到了这一点,但不确定如何在我的例子中使用它: $.getScript =$.ajax=$.ajax (url,回调,缓存){ $.ajax({ type:"GET",url: url,success:回调,dataType:“脚本”,缓存: cache });};
  2. 如果我多次调用$.getScript添加相同的js文件,它是否每次都请求获取该文件?如果是这样的话,有没有办法检查我们是否已经导入了这个脚本,这样我们就可以避免再次为同一个文件调用getScript了?
EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2012-01-19 16:58:50

您的浏览器将相应地缓存 url。所以您不必担心缓存。

但是,如果您想关闭缓存,只需向url添加一个随机字符串,如下所示:

代码语言:javascript
复制
$.getScript('js/code.photoswipe.jquery-3.0.4.min.js?' + Math.random(), function () {
        //do magic
});

?' + Math.random()将允许一个随机数附加到js文件中,因此每次请求该文件时都会中断缓存(因为它会随机生成一个数字)。

票数 -3
EN

Stack Overflow用户

发布于 2012-04-12 00:59:49

如何禁用缓存破坏

代码语言:javascript
复制
$.ajaxSetup({
  cache: true
});

这将确保用户只从服务器抓取一次脚本,然后从本地缓存获取脚本(除非他们的浏览器设置阻止缓存)。

票数 23
EN

Stack Overflow用户

发布于 2013-07-02 20:21:14

jQuery $.getScript的文档说,getScript是以下的缩写:

代码语言:javascript
复制
$.ajax({
  url: url,
  dataType: "script",
  success: success
});

http://api.jquery.com/jQuery.getScript/

这意味着您只需要向其中添加一个缓存: true参数。

代码语言:javascript
复制
$.ajax({
  url: url,
  cache : true,
  dataType: "script",
  success: success
});

就这么简单。getScript函数没有什么特别之处,只是速记。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8930017

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档