Project

General

Profile

1
define( function() {
2

    
3
"use strict";
4

    
5
// A method for quickly swapping in/out CSS properties to get correct calculations.
6
return function( elem, options, callback, args ) {
7
	var ret, name,
8
		old = {};
9

    
10
	// Remember the old values, and insert the new ones
11
	for ( name in options ) {
12
		old[ name ] = elem.style[ name ];
13
		elem.style[ name ] = options[ name ];
14
	}
15

    
16
	ret = callback.apply( elem, args || [] );
17

    
18
	// Revert the old values
19
	for ( name in options ) {
20
		elem.style[ name ] = old[ name ];
21
	}
22

    
23
	return ret;
24
};
25

    
26
} );
(6-6/6)