annotate default/node_modules/jquery/src/css/var/swap.js @ 0:1d038bc9b3d2 default tip

Up:default
author Liny <dev@neowd.com>
date Sat, 31 May 2025 09:21:51 +0800
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
1 define( function() {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
2
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
3 "use strict";
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
4
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
5 // A method for quickly swapping in/out CSS properties to get correct calculations.
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
6 return function( elem, options, callback, args ) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
7 var ret, name,
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
8 old = {};
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
9
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
10 // Remember the old values, and insert the new ones
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
11 for ( name in options ) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
12 old[ name ] = elem.style[ name ];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
13 elem.style[ name ] = options[ name ];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
14 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
15
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
16 ret = callback.apply( elem, args || [] );
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
17
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
18 // Revert the old values
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
19 for ( name in options ) {
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
20 elem.style[ name ] = old[ name ];
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
21 }
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
22
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
23 return ret;
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
24 };
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
25
1d038bc9b3d2 Up:default
Liny <dev@neowd.com>
parents:
diff changeset
26 } );