success : success
}
}
//简单的get请求
$.get = function(url, data, success, dataType) {
return $.ajax(parseArguments.apply(null, arguments))
}
$.post = function(url, data, success, dataType) {
var options = parseArguments.apply(null, arguments)
options.type = 'POST'
return $.ajax(options)
}
$.getJSON = function(url, data, success) {
var options = parseArguments.apply(null, arguments)
options.dataType = 'json'
return $.ajax(options)
}
//这里的url可以是http://www.xxxx.com selector这种形式,就是对加载进来的HTML对行一个筛选
$.fn.load = function(url, data, success) {
if (!this.length) return this
//将请求地址用空格分开
var self = this,
parts = url.split(/\s/),
selector,
options = parseArguments(url, data, success),
callback = options.success
if (parts.length > 1) options.url = parts[0], selector = parts[1]
//要对成功后的回调函数进行一个改写,因为需要将加载进来的HTML添加进当前集合
options.success = function(response) {
//selector就是对请求到的数据就行一个筛选的条件,比如只获取数据里的类名为.test的标签
self.html(selector ? $('<div>').html(response.replace(rscript, "")).find(selector) : response)
//这里才是你写的回调
callback && callback.apply(self, arguments)
}
$.ajax(options)
return this
}
var escape = encodeURIComponent
function serialize(params, obj, traditional, scope) {
var type, array = $.isArray(obj)
$.each(obj, function(key, value) {
type = $.type(value)
//scope用作处理value也是object或者array的情况
//traditional表示是否以传统的方式拼接数据,
//传统的意思就是比如现有一个数据{a:[1,2,3]},转成查询字符串后结果为'a=1&a=2&a=3'
//非传统的的结果则是a[]=1&a[]=2&a[]=3
if (scope) key = traditional ? scope : scope + '[' + (array ? '' : key) + ']'
// handle data in serializeArray() format
//当处理的数据为[{},{},{}]这种情况的时候,一般指的是序列化表单后的结果
if (!scope && array) params.add(value.name, value.value)
// recurse into nested objects
//当value值是数组或者是对象且不是按传统的方式序列化的时候,需要再次遍历value
else if (type == "array"
关键词:zepto是啥