使用jQuery动态加载js脚本文件的方法

2019-12-23,

它们很强大,但有时候也会得不偿失。如果你使用的是jQuery,它里面有一个内置的方法可以用来加载单个js文件。当你需要延迟加载一些js插件或其它类型的文件时,可以使用这个方法。下面就介绍一下如何使用它!


一、jQuery getScript()方法加载JavaScript


jQuery内置了一个方法可以加载单一的js文件;当加载完成后你可以在回调函数里执行后续操作。最基本的使用jQuery.getScript的方法是这样:
复制代码 代码如下:
jQuery.getScript("/path/to/myscript.js", function(data, status, jqxhr) {


 /*
  做一些加载完成后需要执行的事情
 */ 


});

这个getScript方法返回一个jqxhr,你可以像下面这样用它:
复制代码 代码如下:
jQuery.getScript("/path/to/myscript.js")
 .done(function() {
  /* 耶,没有问题,这里可以干点什么 */
 })
 .fail(function() {
  /* 靠,马上执行挽救操作 */
});


最常见的使用jQuery.getScript的地方是延迟加载一个js插件,而且在加载完成时执行它:
复制代码 代码如下:
jQuery.getScript("jquery.cookie.js")
 .done(function() {
  jQuery.cookie("cookie_name", "value", { expires: 7 });
});


二、缓存问题


有一个非常重要的问题,使用jQuery.getScript时,你需要用一个时间戳字符串跟在需要加载的js地址后面,防止它被缓存。但是,如果你希望这个脚本被缓存,你需要设置全局缓存变量,像下面这样:


复制代码 代码如下:
jQuery.ajaxSetup({
  cache: true
});


复制代码 代码如下:
jQuery.ajax({
      url: "jquery.cookie.js",
      dataType: "script",
      cache: true
}).done(function() {
  jQuery.cookie("cookie_name", "value", { expires: 7 });
});

在加载脚本时一定要小心缓存问题!

您可能感兴趣的文章:

  • jquery及js实现动态加载js文件的方法
  • jquery getScript动态加载JS方法改进详解
  • 一个简单的动态加载js和css的jquery代码
  • 三种动态加载js的jquery实例代码另附去除js方法
  • 如何使用jquery动态加载js,css文件实现代码
  • jquery动态加载js/css文件方法(自写小函数)
  • 使用jquery动态加载Js文件和Css文件
  • 使用jquery动态加载javascript以减少服务器压力
  • jquery动态加载js三种方法实例
  • 使用jquery动态加载js文件的方法
  • jQuery实现动态加载(按需加载)javascript文件的方法分析

《使用jQuery动态加载js脚本文件的方法.doc》

下载本文的Word格式文档,以方便收藏与打印。