aboutsummaryrefslogtreecommitdiffstats
path: root/src/css/var/swap.js
blob: f5d8f23ab591a7630fdb6ca3c0cc92dad26b4d02 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// A method for quickly swapping in/out CSS properties to get correct calculations.
export default function( elem, options, callback ) {
	var ret, name,
		old = {};

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

	ret = callback.call( elem );

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

	return ret;
}