jquery 手册
Ajax
属性(Attributes)
回调对象(Callbacks ..
核心(Core)
CSS
数据(Data)
延迟对象(Deferred o ..
尺寸(Dimensions)
效果(Effects)
事件(Events)
表单(Forms)
文档操作(Manipulati ..
杂项(Miscellaneou ..
位置(Offset)
插件编写(Plugin Aut ..
属性(Properties)
选择器(Selectors)
遍历(Traversing)
工具(Utilities)

Returns: jqXHRjqXHR jQuery.getScript( String url, Function success(data, textStatus) )

描述: 使用一个HTTP GET请求从服务端加载一个JavaScript 文件,并执行该文件。
  • version added: 1.0
  • jQuery.getScript( String url, Function success(data, textStatus) )
  • url 一个字符串,包含请求将被发送到的URL。
    success(data, textStatus) 一个回调函数,如果请求成功该函数将执行.

这是一个简写的Ajax函数,等同于:

$.ajax({
  url: url,
  dataType: "script",
  success: success
});

回调传入的是返回的JavaScript文件。这通常无实际用处因为脚本这时已经执行完毕。

脚本是在全局上下文中执行的,所以它可以调用其它变量和使用jQuery函数。 包含的脚本的作用范围是当前页:

$(".result").html("<p>Lorem ipsum dolor sit amet.</p>");

脚本被包含和执行,通过引用文件名字:

$.getScript('ajax/test.js', function(data, textStatus){
   console.log(data); //data returned
   console.log(textStatus); //success
   console.log('Load was performed.');
});

注意: 你需要一个额外的回调来处理 getScript()方法发生的错误,全局ajaxError()回调事件可以用来解决这个问题:

$( "div.log" ).ajaxError(function(e, jqxhr, settings, exception) {
  if (settings.dataType=='script') {
    $(this).text( "Triggered ajaxError handler." );
  }
});

Examples:

例子:

加载 official jQuery Color Animation plugin动态和绑定一些新函数加载后触发的颜色动画。
<!DOCTYPE html>
<html>
<head>
  <script src="../jquery.min.js"></script>
  <style>.block {
   background-color: blue;
   width: 150px;
   height: 70px;
   margin: 10px;
}</style>
</head>
<body>
  
<button id="go">&raquo; Run</button>

<div class="block"></div>

  <script>$.getScript("http://dev.jquery.com/view/trunk/plugins/color/jquery.color.js", function() {
  $("#go").click(function(){
    $(".block").animate( { backgroundColor: "pink" }, 1000)
      .delay(500)
      .animate( { backgroundColor: "blue" }, 1000);
  });
});</script>
</body>
</html>

Demo: