From: Richard Gibson Date: Thu, 13 Dec 2012 17:40:55 +0000 (-0500) Subject: compress -16 min+gzip X-Git-Tag: 1.9.0b1~20 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=452e32769d514d835988c544492e4083df2bc1d6;p=jquery.git compress -16 min+gzip --- diff --git a/src/css.js b/src/css.js index b39b58ee6..210bed2e8 100644 --- a/src/css.js +++ b/src/css.js @@ -273,7 +273,7 @@ jQuery.extend({ }, // A method for quickly swapping in/out CSS properties to get correct calculations - swap: function( elem, options, callback ) { + swap: function( elem, options, callback, args ) { var ret, name, old = {}; @@ -283,7 +283,7 @@ jQuery.extend({ elem.style[ name ] = options[ name ]; } - ret = callback.call( elem ); + ret = callback.apply( elem, args || [] ); // Revert the old values for ( name in options ) { @@ -524,13 +524,11 @@ jQuery.each([ "height", "width" ], function( i, name ) { if ( computed ) { // certain elements can have dimension info if we invisibly show them // however, it must have a current display style that would benefit from this - if ( elem.offsetWidth === 0 && rdisplayswap.test( jQuery.css( elem, "display" ) ) ) { - return jQuery.swap( elem, cssShow, function() { + return elem.offsetWidth === 0 && rdisplayswap.test( jQuery.css( elem, "display" ) ) ? + jQuery.swap( elem, cssShow, function() { return getWidthOrHeight( elem, name, extra ); - }); - } else { - return getWidthOrHeight( elem, name, extra ); - } + }) : + getWidthOrHeight( elem, name, extra ); } }, @@ -599,13 +597,12 @@ jQuery(function() { if ( !jQuery.support.reliableMarginRight ) { jQuery.cssHooks.marginRight = { get: function( elem, computed ) { - // WebKit Bug 13343 - getComputedStyle returns wrong value for margin-right - // Work around by temporarily setting element display to inline-block - return jQuery.swap( elem, { "display": "inline-block" }, function() { - if ( computed ) { - return curCSS( elem, "marginRight" ); - } - }); + if ( computed ) { + // WebKit Bug 13343 - getComputedStyle returns wrong value for margin-right + // Work around by temporarily setting element display to inline-block + return jQuery.swap( elem, { "display": "inline-block" }, + curCSS, [ elem, "marginRight" ] ); + } } }; } @@ -617,11 +614,12 @@ jQuery(function() { jQuery.each( [ "top", "left" ], function( i, prop ) { jQuery.cssHooks[ prop ] = { get: function( elem, computed ) { - var ret; if ( computed ) { - ret = curCSS( elem, prop ); + computed = curCSS( elem, prop ); // if curCSS returns percentage, fallback to offset - return rnumnonpx.test( ret ) ? jQuery( elem ).position()[ prop ] + "px" : ret; + return rnumnonpx.test( computed ) ? + jQuery( elem ).position()[ prop ] + "px" : + computed; } } }; @@ -649,10 +647,10 @@ jQuery.each({ jQuery.cssHooks[ prefix + suffix ] = { expand: function( value ) { var i = 0, + expanded = {}, // assumes a single number if not a string - parts = typeof value === "string" ? value.split(" ") : [ value ], - expanded = {}; + parts = typeof value === "string" ? value.split(" ") : [ value ]; for ( ; i < 4; i++ ) { expanded[ prefix + cssExpand[ i ] + suffix ] = diff --git a/src/manipulation.js b/src/manipulation.js index ec7a0c16b..062527708 100644 --- a/src/manipulation.js +++ b/src/manipulation.js @@ -283,9 +283,10 @@ jQuery.fn.extend({ // Flatten any nested arrays args = core_concat.apply( [], args ); - var fragment, first, scripts, hasScripts, iNoClone, node, doc, + var fragment, first, scripts, hasScripts, node, doc, i = 0, l = this.length, + iNoClone = l - 1, value = args[0], isFunction = jQuery.isFunction( value ); @@ -317,7 +318,7 @@ jQuery.fn.extend({ // Use the original fragment for the last item instead of the first because it can end up // being emptied incorrectly in certain situations (#8070). - for ( iNoClone = l - 1; i < l; i++ ) { + for ( ; i < l; i++ ) { node = fragment; if ( i !== iNoClone ) { @@ -514,13 +515,15 @@ jQuery.each({ insert = jQuery( selector ), last = insert.length - 1; - for ( ; i <= last; i++ ) { - elems = i === last ? this : this.clone(true); - jQuery( insert[i] )[ original ]( elems ); - core_push.apply( ret, elems.get() ); - } + for ( ; i <= last; i++ ) { + elems = i === last ? this : this.clone(true); + jQuery( insert[i] )[ original ]( elems ); + + // Modern browsers can apply jQuery collections as arrays, but oldIE needs a .get() + core_push.apply( ret, elems.get() ); + } - return this.pushStack( ret ); + return this.pushStack( ret ); }; }); @@ -610,9 +613,8 @@ jQuery.extend({ }, clean: function( elems, context, fragment, scripts, selection ) { - var elem, j, tmp, tag, wrap, tbody, + var elem, i, j, tmp, tag, wrap, tbody, ret = [], - i = 0, safe = context === document && safeFragment; // Ensure that context is a document @@ -706,7 +708,7 @@ jQuery.extend({ // Append to fragment // #4087 - If origin and destination elements are the same, and this is // that element, do not append to fragment - if ( !( selection && jQuery.inArray( elem, selection ) !== -1 ) ) { + if ( !selection || jQuery.inArray( elem, selection ) === -1 ) { fragment.appendChild( elem ); } tmp = getAll( elem, "script" );