A shared object between directive compile / linking functions which contains normalized DOM
element attributes. The values reflect current binding state {{ }}. The normalization is
needed since all of these are treated as equivalent in Angular:
<span ng:bind="a" ng-bind="a" data-ng-bind="a" x-ng-bind="a">
$normalize(name);
Converts an attribute name (e.g. dash/colon/underscore-delimited string, optionally prefixed with x- or
data-) to its normalized, camelCase form.
Also there is special case for Moz prefix starting with upper case letter.
For further information check out the guide on Matching Directives
| Param | Type | Details | 
|---|---|---|
| name | string | Name to normalize | 
$addClass(classVal);
Adds the CSS class value specified by the classVal parameter to the element. If animations are enabled then an animation will be triggered for the class addition.
| Param | Type | Details | 
|---|---|---|
| classVal | string | The className value that will be added to the element | 
$removeClass(classVal);
Removes the CSS class value specified by the classVal parameter from the element. If animations are enabled then an animation will be triggered for the class removal.
| Param | Type | Details | 
|---|---|---|
| classVal | string | The className value that will be removed from the element | 
$updateClass(newClasses, oldClasses);
Adds and removes the appropriate CSS class values to the element based on the difference between the new and old CSS class values (specified as newClasses and oldClasses).
| Param | Type | Details | 
|---|---|---|
| newClasses | string | The current CSS className value | 
| oldClasses | string | The former CSS className value | 
$observe(key, fn);
Observes an interpolated attribute.
The observer function will be invoked once during the next $digest following
compilation. The observer is then invoked whenever the interpolated value
changes.
| Param | Type | Details | 
|---|---|---|
| key | string | Normalized key. (ie ngAttribute) . | 
| fn | function(interpolatedValue) | Function that will be called whenever the interpolated value of the attribute changes. See the Directives guide for more info. | 
| function() | Returns a deregistration function for this observer. | 
$set(name, value);
Set DOM element attribute value.
| Param | Type | Details | 
|---|---|---|
| name | string | Normalized element attribute name of the property to modify. The name is reverse-translated using the $attr property to the original name. | 
| value | string | Value to set the attribute to. The value can be an interpolated string. | 
$attr| A map of DOM element attribute names to the normalized name. This is needed to do reverse lookup from normalized name back to actual name. |