]> source.dussan.org Git - jquery-ui.git/commitdiff
Effects: Cleaned up getElementStyles().
authorScott González <scott.gonzalez@gmail.com>
Fri, 9 Nov 2012 19:47:20 +0000 (14:47 -0500)
committerScott González <scott.gonzalez@gmail.com>
Fri, 9 Nov 2012 19:47:20 +0000 (14:47 -0500)
ui/jquery.ui.effect.js

index 5cd33886fdfb3b0b40371ed5e26695587c6f3eae..fee3359bfe275d723e73c12bb8581c799f2696f6 100644 (file)
@@ -700,32 +700,31 @@ $.each([ "borderLeftStyle", "borderRightStyle", "borderBottomStyle", "borderTopS
        };
 });
 
-function getElementStyles() {
-       var style = this.ownerDocument.defaultView ?
-                       this.ownerDocument.defaultView.getComputedStyle( this, null ) :
-                       this.currentStyle,
-               newStyle = {},
-               key,
-               len;
-
-       // webkit enumerates style porperties
+function getElementStyles( elem ) {
+       var key, len,
+               style = elem.ownerDocument.defaultView ?
+                       elem.ownerDocument.defaultView.getComputedStyle( elem, null ) :
+                       elem.currentStyle,
+               styles = {};
+
        if ( style && style.length && style[ 0 ] && style[ style[ 0 ] ] ) {
                len = style.length;
                while ( len-- ) {
                        key = style[ len ];
                        if ( typeof style[ key ] === "string" ) {
-                               newStyle[ $.camelCase( key ) ] = style[ key ];
+                               styles[ $.camelCase( key ) ] = style[ key ];
                        }
                }
+       // support: Opera, IE <9
        } else {
                for ( key in style ) {
                        if ( typeof style[ key ] === "string" ) {
-                               newStyle[ key ] = style[ key ];
+                               styles[ key ] = style[ key ];
                        }
                }
        }
 
-       return newStyle;
+       return styles;
 }
 
 
@@ -761,7 +760,7 @@ $.effects.animateClass = function( value, duration, easing, callback ) {
                        var el = $( this );
                        return {
                                el: el,
-                               start: getElementStyles.call( this )
+                               start: getElementStyles( this )
                        };
                });
 
@@ -777,7 +776,7 @@ $.effects.animateClass = function( value, duration, easing, callback ) {
 
                // map all animated objects again - calculate new styles and diff
                allAnimations = allAnimations.map(function() {
-                       this.end = getElementStyles.call( this.el[ 0 ] );
+                       this.end = getElementStyles( this.el[ 0 ] );
                        this.diff = styleDifference( this.start, this.end );
                        return this;
                });