WEB开发网
开发学院网页设计JavaScript Jquery源码分析---Ajax分析 阅读

Jquery源码分析---Ajax分析

 2010-09-14 13:39:06 来源:WEB开发网   
核心提示: Jquery.ajax是大包大揽的非常复杂的一个方法,它并没有像其它的lib一样,Jquery源码分析---Ajax分析(5),把每个小部分都分开来,它是整个都整在一个函数中,如xml,html,script,json,text,dataType还支持默认的_default和跨域的json

Jquery.ajax是大包大揽的非常复杂的一个方法。它并没有像其它的lib一样,把每个小部分都分开来。它是整个都整在一个函数中。看起来很多,实际上上也没有脱离前面所说的ajax的请求的五步。它的很大一部分代码在处理跨域请求的处理上。下面就分别就ajax的代码进行分析。

ajaxSettings

在①处通过继承的方式把传入参数s和默认的jQuery.ajaxSettings都clone到s变量中。S的同名属性会覆盖jQuery.ajaxSettings的同名属性。这里两次继承s,以便在测试中能检测。

//默认的ajax的请求参数
  ajaxSettings : {
    url : location.href,//默认是地址栏中url
    global : true,//默认支持全局的ajax事件
    type : "GET",
    timeout : 0,
    contentType : "application/x-www-form-urlencoded", 
    processData : true,
    async : true,
    data : null,
    username : null,
    password : null,
    accepts : {
      xml : "application/xml, text/xml",
      html : "text/html",
      script : "text/javascript, application/javascript",
      json : "application/json, text/javascript",
      text : "text/plain",
      _default : "*/*"
   }

这是默认的ajax的设定,我们要在参数s设定同名的属性来覆盖这些属性。但是我们不能覆盖accepts。这个会在后面的代码用到。我们可以通过设定s.dataType等于accepts中的某一个属性key指定请求的data类型,如xml,html,script,json,text。dataType还支持默认的_default和跨域的jsonp。不过其最终会解析成script。

上一页  1 2 3 4 5 6 7 8  下一页

Tags:Jquery 源码 分析

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接