blob: 69388e5f7fbddd4c890586b05b62982cd13ade8e [file] [log] [blame]
Copybara botbe50d492023-11-30 00:16:42 +01001define( function() {
2
3"use strict";
4
5// A method for quickly swapping in/out CSS properties to get correct calculations.
Renovate botf591dcf2023-12-30 14:13:54 +00006return function( elem, options, callback ) {
Copybara botbe50d492023-11-30 00:16:42 +01007 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
Renovate botf591dcf2023-12-30 14:13:54 +000016 ret = callback.call( elem );
Copybara botbe50d492023-11-30 00:16:42 +010017
18 // Revert the old values
19 for ( name in options ) {
20 elem.style[ name ] = old[ name ];
21 }
22
23 return ret;
24};
25
26} );