Bonjour à tous,
Voici mon souci avec jQuery.
J'ai un menu qui au clic de chaque item doit fermer une DIV et en ouvrir une autre (en animation fluide).
Ensuite, la page doit scroller vers une ancre contenue dans cette DIV qui vient de s'ouvrir.
Le problème est que tout se déroule en même temps. Du coup, lorsque la page se dirige vers l'ancre, cette dernière n'est pas encore correctement positionnée. Je n'arrive donc pas au bon endroit.
La seule solution que j'ai trouvée est de passer mes animations sur un délai de 0 seconde (ce qui n'est pas vraiment le truc le plus logique à envisager pour une animation…).
En résumé, en partant de la version simplifiée de ma fonction (déclenchée au clic) mentionnée ci-dessous, comment dois-je faire pour que les événements se déroulent les uns à la suite des autres et non "tous en même temps" ?
Merci à vous !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 function shortcutsZZZ () { $('.boxBody div').stop().slideUp(0,'linear'); $('.boxBody div:eq(' + $('.tabMenu > li#menu01').index('.tabMenu > li') + ')').stop().slideDown(0,'linear'); $('html,body').animate({scrollTop: $("#page").offset().top}, 2000); };
Partager