Javascript: Afterfinish dans un afterfinish

Fermé
joro2117 Messages postés 18 Date d'inscription mardi 5 avril 2011 Statut Membre Dernière intervention 22 octobre 2013 - 12 avril 2011 à 09:28
joro2117 Messages postés 18 Date d'inscription mardi 5 avril 2011 Statut Membre Dernière intervention 22 octobre 2013 - 12 avril 2011 à 09:42
Bonjour,

J'utilise la librairie Script.aculo.us pour faire disparaitre une image, plus précisément l'effet "Fade". Après la disparition de cette image j'en crée deux autres que j'affiche à l'aide l'effet Appear contenu dans la librairie Script.Aculo.us.

Mon problème surgit à l'apparition des deux nouvelles images, je voudrais qu'elle s'affiche progressivement, mais elle apparaissent en flash. J'ai pensé c'est parce que je crée mes images et que ensuite je les affichent, donc elles apparraissent sans l'effet.
J'ai aussi essayé de mettre une "duration" à l'apparition mets ils cela ne change rien. J'ai aussi essayer de faire une fonction "HideEffect" dans laquelle j'appellais tout simplement la fonction "Effect.Appear" et de cette façon je pouvais gérer plus facilement la "duration", le "from" et le to.

J'ai pensé à une solution toute bête de rajouté un afterfinish dans l'afterfinish mais je ne sais pas si cela est possible, et si oui comment le faire.
l'afterfinish se placerais à la hauteur après la création des différents attributs de mes images.

Effect.Fade(image, {
                    afterFinish : function(obj) {
                        var back = document.createElement('img');
                        var large = document.createElement('img');
                        var spanBack = document.getElementById('back');

                        back.setAttribute('src', 'img/back.png');
                        back.setAttribute('onClick', 'retour()');
                        back.setAttribute('id', 'imgBack');
                        large.setAttribute('src', 'img/' + image.id + '.png');
                        large.setAttribute('id', 'grandeImage');

                        Effect.Appear(spanBack.appendChild(back));
                        Effect.Appear(spanBack.appendChild(large));

                    }


Si quelqu'un peut m'aider je vous en serais très reconnaissant.
Merci d'avance

Joro

1 réponse

joro2117 Messages postés 18 Date d'inscription mardi 5 avril 2011 Statut Membre Dernière intervention 22 octobre 2013
12 avril 2011 à 09:42
Enfaite j'ai réussit à faire un afterFinish dans un afterFinish, mais le résultat n'y est pas. L'effet Appear ne fonctionne pas. Comment puis-je faire apparaitre avec l'effet appear, quand je crée les élément dans la même fonction. ?
0