如何防止$ .getScript加载相同的文件?

时间:2010-02-09 18:18:51

标签: jquery ajax api

我正在尝试使用$ .getScript动态加载file.js。我有几个选择选项,每次点击加载不同的脚本。我只想调用它一次,如果可能的话,在点击另一个选项时从dom中删除它,但是firebug说在下一次后续点击时反复加载相同的脚本。尝试了几种解决方案,但发现了意想不到的结果:

  1. 在回调中放置unbind click或event right。这个会在下次点击时杀死点击事件。我仍然希望点击发生。也许我做错了。
  2. 使用.length检查网址是否没有运气
  3. 在脚本中使用变量/函数(如果它已存在于dom中)
  4. 我错过了什么,或者它应该是这样?我在jquery论坛上就此问题找到了一个永恒的问题:)希望在这里找到更好的运气。谢谢你的帮助。

1 个答案:

答案 0 :(得分:7)

这相当于幕后的getScript。将缓存选项设置为true可以解决您的问题。

$.ajax({
  url: url,
  dataType: 'script',
  success: success,
  cache: true
});