码迷,mamicode.com
首页 > Web开发 > 详细

jQuery源码中的Ajax--getScript()/getJson()方法

时间:2016-07-20 23:04:48      阅读:272      评论:0      收藏:0      [点我收藏+]

标签:

一、$.getScript()方法

  • 有时候,在页面初次加载时就取得所需的全部Javascript文件是完全没必要的,可以按需所取。
  • 该函数用于动态加载JS文件,并在全局作用域下执行文件中的JS代码。
  • 该函数可以加载跨域的JS文件。请注意,该函数是通过异步方式加载数据的。
  • 该函数属于全局jQuery对象。

  语法:

$(function(){
        $("send").on("click",function(){
            $.getScript("script.js",function(){
                //回调函数
               //data:返回的数据
     //textStatus:描述状态的字符串
            });
        });
});            

  $.getScript()方法的源码:

getScript: function( url, callback ) {
        return jQuery.get( url, undefined, callback, "script" );
    }

  在该方法中,调用了$.get()方法,幷传入了响应的参数。

  $.get()方法的语法结构如下:

jQuery.get( url [, data ] [, success ] [, type ] )

  $.get()方法等价于:

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

二、$.getJson()方法

  • 该方法用于加载Json文件
  • 如果请求的URL中包括"callback=?"等类似的部分,jQuery会自动将其视作JSONP,并执行对应的回调函数来获取JSON数据。
  • 该函数是通过异步方式加载数据的。
  • 该函数属于全局jQuery对象。

  语法:

$(function(){
        $("send").on("click",function(){
            $.getJson("test.json",function(data){
                //回调函数
         //data:返回的数据
         //textStatus:描述状态的字符串
}); }); });

  $.getJson()方法的源码:

getJSON: function( url, data, callback ) {
        return jQuery.get( url, data, callback, "json" );
    }

  在该方法中,也调用了$.get()方法,幷传入了相应的参数。

  $.getJson()等价于:

$.ajax({
 url: url,
 type: "GET",
 data: data,
 success: success,
 dataType: "json"
});

 

  *$.getScript()和$.getJson()方法都是通过对$.get()方法封装实现的。属于第三层方法。

  *总之:

第三层 $.getJson()、$.getScript()
第二层 $.get()、$.post()
第一层 $.ajax()

jQuery源码中的Ajax--getScript()/getJson()方法

标签:

原文地址:http://www.cnblogs.com/niulina/p/5689749.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!