jquery插件的开发包括两种:一种是类级别的插件开发,即给jquery添加新的全局函数,相当于给jquery类本身添加方法。
扩展ajax
$(function () {
//备份jquery的ajax方法
var _ajax = $.ajax;
//重写jquery的ajax方法
$.ajax = function (opt) {
//备份opt中error和success方法
var fn = {
error: function (XMLHttpRequest, textStatus, errorThrown) { },
success: function (data, textStatus) { }
}
if (opt.error) {
fn.error = opt.error;
}
if (opt.success) {
fn.success = opt.success;
}
//扩展增强处理
var _opt = $.extend(opt, { // 对opt 进行扩展 这样 新的success 会覆盖opt的success的方法
success: function (data, textStatus) {
//成功回调方法增强处理 所有的ajax 都会执行到这里,如果有需要过滤ajax 的在下面做操作。 操作之后再执行ajax 本身的sucess 方法
fn.success(data, textStatus);
}
catch (e) {
}
}
});
_ajax(_opt);
};
})