手机
当前位置:查字典教程网 >编程开发 >Javascript教程 >jQuery extend 的简单实例
jQuery extend 的简单实例
摘要:复制代码代码如下:jQuery.extend=jQuery.fn.extend=function(){varoptions,name,src...

复制代码 代码如下:

jQuery.extend = jQuery.fn.extend = function() {

var options, name, src, copy, copyIsArray, clone,

target = arguments[0] || {},

i = 1,

length = arguments.length,

deep = false;

// Handle a deep copy situation

if ( typeof target === "boolean" ) {

deep = target;

target = arguments[1] || {};

// skip the boolean and the target

i = 2;

}

// Handle case when target is a string or something (possible in deep copy)

if ( typeof target !== "object" && !jQuery.isFunction(target) ) {

target = {};

}

// extend jQuery itself if only one argument is passed

if ( length === i ) {

target = this;

--i;

}

for ( ; i < length; i++ ) {

// Only deal with non-null/undefined values

if ( (options = arguments[ i ]) != null ) {

// Extend the base object

for ( name in options ) {

src = target[ name ];

copy = options[ name ];

// Prevent never-ending loop

if ( target === copy ) {

continue;

}

// Recurse if we're merging plain objects or arrays

if ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) {

if ( copyIsArray ) {

copyIsArray = false;

clone = src && jQuery.isArray(src) ? src : [];

} else {

clone = src && jQuery.isPlainObject(src) ? src : {};

}

// Never move original objects, clone them

target[ name ] = jQuery.extend( deep, clone, copy );

// Don't bring in undefined values

} else if ( copy !== undefined ) {

target[ name ] = copy;

}

}

}

}

// Return the modified object

return target;

};

【jQuery extend 的简单实例】相关文章:

jQuery zTree加载树形菜单功能

jQuery的Scrollify插件实现滑动到页面下一节点

7个有用的jQuery代码片段分享

jQuery+ajax实现无刷新级联菜单示例

javascript原型模式用法实例详解

jQuery插件zepto.js简单实现tab切换

基于jQuery实现的无刷新表格分页实例

AspNet中使用JQuery boxy插件的确认框

jQuery封装的tab选项卡插件分享

JQuery中attr方法和removeAttr方法用法实例

精品推荐
分类导航