J'essaye de réaliser un diaporama en utilisant JQuery, l'image s'efface, change, puis réapparait (c'est toujours la même balise dont je change juste la source de l'image). Problème, je veux que l'image soit centré, horizontalement pas de problème, mais verticalement lorsque je rajoute une marge (margin-top donc), il la prend en compte uniquement sur l'image suivante...
Important : lorsque je mets un alert() juste après avoir modifier la source de l'image et avant de définir la margin-top, il l'applique bien sur la bonne image... Je suppose donc que c'est un problème de syncrone/asyncrone, mais en utilisant un .delay(xxxx) j'ai toujours le problème...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 $("#mainImg").animate({opacity : 0}, 2000, "linear", function(){ $("#mainImg").attr("src",tabImg[i]); var hauteur = (parseInt($(window).height()) - parseInt($("#mainImg").height())) /2; $("#mainImg").css("margin-top", hauteur + "px"); $("#mainImg").attr("src",tabImg[i]); $("#mainImg").animate({opacity : 1}, 3000); });
Précision code : le i a bien le bon indice. tabImg contient l'adresse de mes images (ex : diapo/monimage.jpg)
Partager