MCPcopy Create free account
hub / github.com/angular-ui/ui-router / getElementAnimationDetails

Function getElementAnimationDetails

test/angular/1.2/angular-animate.js:1229–1285  ·  view source on GitHub ↗
(element, cacheKey)

Source from the content-addressed store, hash-verified

1227 }
1228
1229 function getElementAnimationDetails(element, cacheKey) {
1230 var data = cacheKey ? lookupCache[cacheKey] : null;
1231 if(!data) {
1232 var transitionDuration = 0;
1233 var transitionDelay = 0;
1234 var animationDuration = 0;
1235 var animationDelay = 0;
1236 var transitionDelayStyle;
1237 var animationDelayStyle;
1238 var transitionDurationStyle;
1239 var transitionPropertyStyle;
1240
1241 //we want all the styles defined before and after
1242 forEach(element, function(element) {
1243 if (element.nodeType == ELEMENT_NODE) {
1244 var elementStyles = $window.getComputedStyle(element) || {};
1245
1246 transitionDurationStyle = elementStyles[TRANSITION_PROP + DURATION_KEY];
1247
1248 transitionDuration = Math.max(parseMaxTime(transitionDurationStyle), transitionDuration);
1249
1250 transitionPropertyStyle = elementStyles[TRANSITION_PROP + PROPERTY_KEY];
1251
1252 transitionDelayStyle = elementStyles[TRANSITION_PROP + DELAY_KEY];
1253
1254 transitionDelay = Math.max(parseMaxTime(transitionDelayStyle), transitionDelay);
1255
1256 animationDelayStyle = elementStyles[ANIMATION_PROP + DELAY_KEY];
1257
1258 animationDelay = Math.max(parseMaxTime(animationDelayStyle), animationDelay);
1259
1260 var aDuration = parseMaxTime(elementStyles[ANIMATION_PROP + DURATION_KEY]);
1261
1262 if(aDuration > 0) {
1263 aDuration *= parseInt(elementStyles[ANIMATION_PROP + ANIMATION_ITERATION_COUNT_KEY], 10) || 1;
1264 }
1265
1266 animationDuration = Math.max(aDuration, animationDuration);
1267 }
1268 });
1269 data = {
1270 total : 0,
1271 transitionPropertyStyle: transitionPropertyStyle,
1272 transitionDurationStyle: transitionDurationStyle,
1273 transitionDelayStyle: transitionDelayStyle,
1274 transitionDelay: transitionDelay,
1275 transitionDuration: transitionDuration,
1276 animationDelayStyle: animationDelayStyle,
1277 animationDelay: animationDelay,
1278 animationDuration: animationDuration
1279 };
1280 if(cacheKey) {
1281 lookupCache[cacheKey] = data;
1282 }
1283 }
1284 return data;
1285 }
1286

Callers 1

animateSetupFunction · 0.70

Calls 2

forEachFunction · 0.70
parseMaxTimeFunction · 0.70

Tested by

no test coverage detected