Salut,
Je n'ai pas réussi à tester mais il me semble que l'erreur se situe ici : MewwPO.js ligne 149 :
if(posX < oldX){
speed = speed - (speed 2); //à remplacer par speed = -element.speed;
velocity = posX - (posX 2); //à remplacer par velocity = -posX (ça ne change rien ça simplifie juste l'écriture)
}else if(posX > oldX){
speed = element.speed;
velocity = posX;
}
Le problème est qu'avec ce que tu as fait, quand on drag vers la gauche, à chaque fois que l'évènement mouseMouse survient, or il survient plusieurs fois lors d'un même glissé, le sens de speed s'inverse. Donc, une fois le glissé terminé, on ne sait pas quel va être le sens de speed. En revanche, pendant le glissé, la variable velocity intervient au niveau du déplacement. Elle est bien négative à tous les coups, et plus puissante que speed, donc pendant le glissé les éléments se déplacent bien uniquement vers la gauche.
Par contre je ne vois pas pourquoi après le glissé ça se déplacerait plus souvent vers la gauche que vers la droite, dans la logique ça devrait être 50/50.