Bonjour,

J'ai actuellement un problème avec mon code JS. Sur ma page j'ai une liste une chaque élément possède comme attribut data-position.
Lorsque la position ne change pas ma liste est trié sans problème. Mais lorsque la position change problème de tri :( .

J'ai fais un test de ma fonction de tri sans aucun changement que voici https://jsfiddle.net/tulifer/k41tg657/
Voici ce que j'ai fais mais qui ne fonctionne pas https://jsfiddle.net/tulifer/jak6rp59/
J'ai mis des couleurs pour voir que le data-position changeait bien mais que le tri ne s'effectuait pas.

Si vous avez une idée de solution je suis prenneur.
Merci.

2 réponses


MaximaxouSlider
Réponse acceptée

Bonjour,
Je ne sais pas ce qui se passe avec la méthode data de jQuery, mais elle semble ne pas fonctionner correctement. Changer la fonction sort_li :

    function sort_li(a, b) {
        return ($(b).attr('data-position')) < ($(a).attr('data-position')) ? 1 : -1;
    }

edit :
C'est un détail mais je remplacerais ton setInterval par ceci :
var randomTri = function() {
random();
tri();
};
$(function(){
randomTri();
setInterval(randomTri, 3000);
});
Afin que dès le départ ce soit aléatoire et trié.

Tulifer
Auteur

Merci beaucoup, je ne sais même pas pourquoi j'ai pas essayé avec attr à la place de data .