aboutsummaryrefslogtreecommitdiffstats
path: root/src/css/var/swap.js
blob: 90b31d58444afd8c2863d785858b691ca35d83f0 (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 function swap( 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;
}