手机
当前位置:查字典教程网 >编程开发 >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 的简单实例】相关文章:

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

jQuery实现的多屏图像图层切换效果实例

javascript函数特点实例

js实现简单锁屏功能实例

javascript原型模式用法实例详解

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

JQuery球队选择实例

jQuery聚合函数实例

JQuery中Text方法用法实例分析

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

精品推荐
分类导航