AngularJS-Animationen
AngularJS bietet Animationseffekte, die mit CSS verwendet werden können.
Um Animationen zu verwenden, benötigt AngularJS die Bibliothek angular-animate.min.js.
<script src="../libs/angular.js/1.4.6/angular-animate.min.js.html"></script>
Außerdem müssen Sie das Modul ngAnimate in Ihrer Anwendung verwenden:
<body ng-app="ngAnimate">
Was ist eine Animation?
Animationen sind dynamisch wechselnde Effekte, die durch Veränderung von HTML-Elementen erzeugt werden.
Beispiel
Aktivieren Sie das Kontrollkästchen, um das DIV auszublenden:
Das DIV ausblenden:<input type="checkbox" ng-model="myCheck">
<div ng-hide="myCheck"></div>
</body>
Selbst ausprobieren »
![]() |
Animationen sollten in Anwendungen nicht zu häufig verwendet werden, aber ein angemessener Einsatz von Animationen kann die Seite bereichern und es Benutzern erleichtern, sie zu verstehen. |
|---|
Wenn unsere Anwendung den Anwendungsnamen bereits festgelegt hat, können wir ngAnimate direkt zum Modul hinzufügen:
Beispiel
<h1>Das DIV ausblenden:<input type="checkbox" ng-model="myCheck"></h1>
<div ng-hide="myCheck"></div>
<script>
Selbst ausprobieren »
Was macht ngAnimate?
Das Modul ngAnimate kann Klassen hinzufügen oder entfernen.
Das Modul ngAnimate lässt HTML-Elemente nicht selbst animieren, aber ngAnimate überwacht Ereignisse wie das Ausblenden und Anzeigen von HTML-Elementen. Wenn ein Ereignis eintritt, verwendet ngAnimate vordefinierte Klassen, um Animationen für die HTML-Elemente festzulegen.
AngularJS-Direktiven, die Klassen hinzufügen/entfernen:
ng-showng-hideng-classng-viewng-includeng-repeatng-ifng-switch
ng-showundng-hideDie Direktive wird verwendet, um Folgendes hinzuzufügen oder zu entfernenng-hideKlassenwerte.
Andere Direktiven fügenng-enterKlassen hinzu, wenn sie in das DOM eintreten, und wenn sie aus dem DOM entfernt werden, fügen sieng-leaveAttribute hinzu.
Wenn sich die Position eines HTML-Elements ändert,ng-repeatDie Direktive kann außerdemng-moveKlassen hinzufügen.
Darüber hinaus wird nach Abschluss der Animation die Klassensammlung des HTML-Elements entfernt. Zum Beispiel:ng-hideDie Direktive wird die folgenden Klassen hinzufügen:
ng-animateng-hide-animateng-hide-add(wenn das Element ausgeblendet wird)ng-hide-remove(wenn das Element angezeigt wird)ng-hide-add-active(wenn das Element ausgeblendet wird)ng-hide-remove-active(wenn das Element angezeigt wird)
Verwendung von CSS-Animationen
Wir können CSS-Transitions oder CSS-Animationen verwenden, um HTML-Elemente zu animieren. Für diesen Teil kannst du in unseremCSS-Transition-Tutorial, CSS-Animations-Tutorial nachsehen。
CSS-Transitions
CSS-Transitions ermöglichen es uns, einen CSS-Eigenschaftswert reibungslos in einen anderen zu ändern:
Beispiel
Wenn das DIV-Element mit der.ng-hideKlasse gesetzt wird, dauert der Übergang 0.5 Sekunden und ändert die Höhe von 100px auf 0:
div {
transition: all linear 0.5s;
background-color: lightblue;
height: 100px;
}
.ng-hide {
height: 0;
}
</style>
Selbst ausprobieren »
CSS-Animationen
CSS-Animationen ermöglichen es dir, CSS-Eigenschaftswerte reibungslos zu ändern:
Beispiel
Wenn das DIV-Element mit der.ng-hideclass,myChangeDie Animation wird ausgeführt und ändert die Höhe reibungslos von 100px auf 0:
@keyframes myChange {
from {
height: 100px;
} to {
height: 0;
}
}
div {
height: 100px;
background-color: lightblue;
}
div.ng-hide {
animation: 0.5s myChange;
}
</style>
Selbst ausprobieren »
