angularjs enchaîné fade-in / fade-out de transition
J'ai regardé le officiel afficher/masquer la transition exemple au bas de cette page... http://docs.angularjs.org/api/ng.directive:ngShow
J'ai essayé de le modifier pour obtenir un sans heurt de fondu de transition (transition: opacity 0,5 s ease-in-out) d'un div à l'autre, où les deux divs occupent la même position sur la page, de sorte que la div s'estompe complètement avant de les autres div commence à s'estomper.
En jquery, il devrait être aussi simple que:
$("#divA").fadeOut(function() { $("divB").fadeIn(); });
Quelqu'un aurait-il des conseils sur la meilleure façon d'atteindre cet angulaire, à l'égard lié exemple, qui utilise un modèle unique "checked" pour déclencher la transition?
Je pense que j'ai besoin de plus d'infos... ce qui pourrait déclencher les effets de fading? Pouvez-vous donner un exemple d'utilisation de plus d'un exemple de code?
Je pourrais, mais je pense que je peux décrire, en référence à l'exemple dans le lien. Dans cet exemple, les deux animation des divs avec l'class="check-élément d'animation spectacle" attribut, ils animent en même temps (c'est à dire qu'ils sont à la fois visibles alors qu'ils sont à l'animation). Un scénario très commun je faire usage de jquery est de fade-out/masquer le premier div, et une fois que ses masqué, c'est fade-in/afficher la deuxième div dans le même emplacement sur la page. En d'autres termes, à proprement fade-out de certains contenus et puis fondu dans le remplacement de contenu avec un seul du contenu divs visible à n'importe quel point dans le temps.
Avez-vous utilisé l'un de ces réponses? Si oui, vous devriez accepter la réponse choisie.
Je pourrais, mais je pense que je peux décrire, en référence à l'exemple dans le lien. Dans cet exemple, les deux animation des divs avec l'class="check-élément d'animation spectacle" attribut, ils animent en même temps (c'est à dire qu'ils sont à la fois visibles alors qu'ils sont à l'animation). Un scénario très commun je faire usage de jquery est de fade-out/masquer le premier div, et une fois que ses masqué, c'est fade-in/afficher la deuxième div dans le même emplacement sur la page. En d'autres termes, à proprement fade-out de certains contenus et puis fondu dans le remplacement de contenu avec un seul du contenu divs visible à n'importe quel point dans le temps.
Avez-vous utilisé l'un de ces réponses? Si oui, vous devriez accepter la réponse choisie.
OriginalL'auteur user2754486 | 2013-10-25
Vous devez vous connecter pour publier un commentaire.
J'ai utilisé l'exemple de la ngShow la jsfiddle basé sur angular1.2.0-rc.3.
Le code html:
Les styles CSS
Et enfin le code JavaScript, n'oubliez pas d'inclure les bibliothèques
angular.js
etangular-animate.js
J'espère que cela vous aide à vous 😉
Tout d'abord, merci pour le code. Deuxièmement, à la réflexion, définissant des styles css est exactement pourquoi les développeurs préfèrent un "fadeOut" de la fonction. De sorte que nous n'avons pas à plonger dans le CSS. Je me rends compte que beaucoup sont contre l'inclusion de jQuery côtés Angularjs, mais pour éviter de style personnalisé, il semble que cela peut être nécessaire.
OriginalL'auteur Adrian
À l'aide de la ngAnimate module, vous pouvez le faire en pure CSS avec le
-transition-delay
directive:Plunker
HTML
CSS
Nécessite position:absolute malheureusement. Peut-être pas la meilleure solution pour les pages complexes.
Juste utilisé ce pour les 2 divs occuper le même espace - fonctionne comme un charme!
OriginalL'auteur rphv
Vous pouvez utiliser ng-animer en collaboration avec ng-show (http://docs.angularjs.org/api/ngAnimate), disponible à partir Angulaire 1.1.4. Ou bien tout simplement appliquer un
show
classe lorsque le modèle est coché et appliquer votre spectacle et de l'animation de la classe.Ah je vois, j'avais l'adresse que par la mise en ng-classe à partir d'une fonction, la mauvaise mise à jour de mon exemple.
OriginalL'auteur eddiec