2010-10-01 5 views
-1

J'utilise le gestionnaire d'événements mousemove avec jQuery:jQuery animation mousemove

$(document).mousemove(function(e) { updateDownloadPosition(e); }); 

Il fonctionne parfaitement dans Chrome, mais tous les autres navigateurs que j'ai essayé l'événement MouseMove ne se déclenche pas jusqu'à l'arrêt de la souris en mouvement, au lieu de constamment chaque fois qu'il bouge.

--EDIT--

Ok, donc comme l'a justement fait remarquer Tim bas, ce ne est pas l'événement MouseMove, sa ma fonction, maintenant je me concentre sur ma fonction d'animation:

paralaxArray[i].object.animate(
      {marginLeft: newX}, 
      {duration: 3000, 
      easing: 'easeOutExpo'}); 

afin d'obtenir ce pour réinitialiser correctement sur mousemove j'utilisais la fonction stop():

paralaxArray[i].object.stop().animate(

... mais cela produit une animation saccadée dans chrome maintenant je l'utilise clearQueue:

paralaxArray[i].object.clearQueue(); 
paralaxArray[i].object.animate(
      {marginLeft: newX}, 
      {duration: 3000, 
      easing: 'easeOutExpo'}); 

Mais cette façon de faire (et avec arrêt()) provoque tous les navigateurs autres que le chrome seulement une fois que la souris animer a cessé de bouger. Qu'est-ce qui peut causer cela?? Est-ce que je vais devoir écrire ma propre fonction de mise à jour d'animation?

Merci encore :)

Merci

+2

Vous êtes absolument sûr que la fonction 'updateDownloadPosition()' n'est pas à blâmer? –

+0

Merci beaucoup David, j'ai mis à jour ma question! – bbeckford

Répondre

-1

Juste pour finir cette question, j'ai fini par écrire ma propre fonction d'animation à la fin qui a ensuite travaillé parfaitement.