9
votes

Animation pour ajouter des éléments DOM avec jQuery

Pour le moment, j'ajoute des éléments à une page sur un Cliquez sur < / a> événement utilisant après . J'aimerais animer cela d'une certaine manière afin que les nouveaux éléments n'apparaissent pas soudainement hors de nulle part.

Je ne suis pas dérangé quelle méthode d'animation est utilisée tant qu'elle apparaît à l'utilisateur ce qui se passe quand ils cliquent.

Je n'ai jamais utilisé d'animation dans JQuery avant et n'aimiez vraiment pas d'exemples pour travailler avec des éléments DOM existants. Quel modèle doit être utilisé pour animer la création de nouveaux éléments de JQuery?


0 commentaires

5 Réponses :


2
votes

Un simple Fadein fonctionne généralement bien.


0 commentaires

29
votes

Vous pouvez faire quelque chose comme: xxx


1 commentaires

C'était parfait pour moi, je pourrais facilement créer un élément ... Animez-le ... puis ajoutez un rappel pour le supprimer.



6
votes

Essayez quelque chose comme ceci: xxx

où 1000 est la vitesse de laquelle l'élément peut disparaître. Je mets la peau () en supposant que le nouvel élément DOM est visible lors de la création. , pas sûr si c'est nécessaire ou non. La meilleure chose à faire est de mettre un "affichage: NONE" sur le nouvel élément lorsque vous le créez, puis utilisez simplement Fadein ().

Il y a d'autres effets que vous pouvez utiliser trop diapositives / slitdown afin que vous puissiez vouloir regarder les personnes aussi.


0 commentaires

2
votes

Vous pouvez utiliser n'importe quelle animation. Vous pouvez aller pour un simple show xxx

ou comme précédemment suggéré, Fadein . Encore une fois, vous pouvez décider de la vitesse - comme dans montrer . Ou vous pouvez aller pour une animation personnalisée. xxx

aller ici pour la documentation d'effets JQuery.


0 commentaires

3
votes

Ce que j'ai fait dans le passé est d'insérer un espace réservé de taille zéro-DIV au point où je veux insérer mon nouvel élément.

I Animerai cet espace réservé à la taille que je veux, puis insérez un Version cachée em> de l'élément que je veux montrer à l'intérieur de l'espace réservé et la fondue en vue. P>

Une fois que la fondu est complète, je "déroulant" l'espace réservé pour le supprimer, en utilisant ce qui suit Code: P>

    // Essentially, this does the opposite of jQuery.wrap. Here is an example:
    //
    //      jQuery('p').wrap('<div></div>');
    //      jQuery('p').parent().unwrap().remove();
    //
    // Note that it is up to you to remove the wrapper-element after its
    // childNodes have been moved up the DOM
    jQuery.fn.unwrap = function () {
        return this.each(function(){
            jQuery(this.childNodes).insertBefore(this);
        });
    };


1 commentaires

Je ne sais pas si c'était vraiment ce que je cherchais, mais il semble si cool que je ne peux pas m'empêcher de ne pas vous aider comme la réponse.