MCPcopy
hub / github.com/angular-ui/ui-router / handleCSSClassChanges

Function handleCSSClassChanges

test/angular/1.4/angular.js:4975–5001  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

4973 }
4974
4975 function handleCSSClassChanges() {
4976 forEach(postDigestElements, function(element) {
4977 var data = postDigestQueue.get(element);
4978 if (data) {
4979 var existing = splitClasses(element.attr('class'));
4980 var toAdd = '';
4981 var toRemove = '';
4982 forEach(data, function(status, className) {
4983 var hasClass = !!existing[className];
4984 if (status !== hasClass) {
4985 if (status) {
4986 toAdd += (toAdd.length ? ' ' : '') + className;
4987 } else {
4988 toRemove += (toRemove.length ? ' ' : '') + className;
4989 }
4990 }
4991 });
4992
4993 forEach(element, function(elm) {
4994 toAdd && jqLiteAddClass(elm, toAdd);
4995 toRemove && jqLiteRemoveClass(elm, toRemove);
4996 });
4997 postDigestQueue.remove(element);
4998 }
4999 });
5000 postDigestElements.length = 0;
5001 }
5002
5003
5004 function addRemoveClassesPostDigest(element, add, remove) {

Callers

nothing calls this directly

Calls 4

forEachFunction · 0.70
splitClassesFunction · 0.70
jqLiteAddClassFunction · 0.70
jqLiteRemoveClassFunction · 0.70

Tested by

no test coverage detected