2009-09-07 4 views
0

J'ai un image sprite of sorts avec plusieurs images pour 1 bouton. Je cherche à "jouer" à travers les cadres sur le roulement du lien/bouton en utilisant jQuery. Actuellement, l'image est définie comme l'arrière-plan du bouton en utilisant CSS, donc je cherche à changer la position d'arrière-plan chaque ~ 30ms par ~ 40px le long de l'axe Y (mais je peux changer la direction) 10x pour qu'elle bouge ~ 400px . J'ai essayé d'utiliser l'animate dans jQuery avec le plugin de position d'arrière-plan modifié, similaire à celui de shown here mais il déplace plus ou moins l'image d'arrière-plan pixel par pixel, pas les sauts de pixels.Déplacement d'une image d'arrière-plan X pixels toutes les X millisecondes

Existe-t-il une meilleure option?

Répondre

2

Si tout ce que vous voulez faire est de déplacer une image d'arrière-plan, vous pouvez utiliser setInterval. Telle est l'idée de base (je n'ai pas testé ce donc il ne peut pas être parfait/avoir des erreurs)

function moveImage() { 
var x = parseInt($(selector).css("backgroundPositionx")); 
var y = parseInt($(selector).css("backgroundPositiony")); 
$(selector).css("backgroundPositionx",x+change_in_x); 
$(selector).css("backgroundPositiony",y+change_in_y); 
} 

document.setInterval(moveImage,numberofmilliseconds); 

EDIT: erreurs corrigées

+7

« vieux js plaine », dit-il, donner un exemple jQuery ... ;-) – nickf

+0

Les paramètres de setInterval sont dans l'ordre inverse –

Questions connexes