Animation d'un tri
Résolu
Lic90
Messages postés
21
Date d'inscription
Statut
Membre
Dernière intervention
-
Lic90 Messages postés 21 Date d'inscription Statut Membre Dernière intervention -
Lic90 Messages postés 21 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Dans le cadre de mes études je dois réaliser la même animation que dans le plugin MixItUp https://www.kunkalabs.com/mixitup/
J'ai fait tous les tris et filtres nécessaire seulement ça se passe trop vite et il faudrait que les blocs se déplacent comme dans le plugin.
J'ai vu qu'ils utilisaient un transform: translate pour obtenir cet effet. Le problème c'est que je ne parviens pas à l'intégrer dans mes fonctions de tri.
Voici le code html :
Et voici ma fonction pour effectuer un tri croissant :
Pourriez-vous m'aider svp. Vous êtes mon dernier espoir.
Merci d'avance.
EDIT: Ajout de la coloration syntaxique.
Dans le cadre de mes études je dois réaliser la même animation que dans le plugin MixItUp https://www.kunkalabs.com/mixitup/
J'ai fait tous les tris et filtres nécessaire seulement ça se passe trop vite et il faudrait que les blocs se déplacent comme dans le plugin.
J'ai vu qu'ils utilisaient un transform: translate pour obtenir cet effet. Le problème c'est que je ne parviens pas à l'intégrer dans mes fonctions de tri.
Voici le code html :
<div id="SandBox" class="sandbox"> <div class="mix category-1" data-value="7">7</div> <div class="mix category-2" data-value="9">9</div> <div class="mix category-1" data-value="4" >4</div> <div class="mix category-2" data-value="6">6</div> <div class="mix category-1" data-value="10">10</div> <div class="mix category-1" data-value="2">2</div> <div class="mix category-2" data-value="8">8</div> <div class="mix category-2" data-value="3">3</div> <div class="mix category-1" data-value="1">1</div> <div class="mix category-2" data-value="11">11</div> <div class="mix category-2" data-value="5">5</div> <div class="mix category-2" data-value="12">12</div> </div>
Et voici ma fonction pour effectuer un tri croissant :
$("#croissant").click(function(){ $('#SandBox').children().sort(function(a, b) { var tri = +a.getAttribute('data-value') - +b.getAttribute('data-value'); return tri; }).css("marginLeft","1.5%").appendTo($('#SandBox')); });
Pourriez-vous m'aider svp. Vous êtes mon dernier espoir.
Merci d'avance.
EDIT: Ajout de la coloration syntaxique.
A voir également:
- Animation d'un tri
- Comment faire un tri personnalisé sur excel - Guide
- Logiciel tri photo - Guide
- Dp animation maker - Télécharger - Animation
- Tri turf - Télécharger - Sport
- Votre colis est retenu au centre de tri - Accueil - Arnaque
2 réponses
Personne pour m'aider ? Svp c'est pour un examen :-(
Le problème de ton code est le suivant:
Tu réordonne les enfants de sandbox, puis tu fais un appendTo pour les repositionner correctement dans le DOM. En faisant ça, tu supprime l'élément pour le recréer à la bonne place. Le navigateur n'arrive donc pas à faire une transition entre ces deux positions puisque l'élément DOM n'est plus le même.
Tu réordonne les enfants de sandbox, puis tu fais un appendTo pour les repositionner correctement dans le DOM. En faisant ça, tu supprime l'élément pour le recréer à la bonne place. Le navigateur n'arrive donc pas à faire une transition entre ces deux positions puisque l'élément DOM n'est plus le même.
Je voulais vous remercier de votre réponse aussi rapide.
C'est magnifique ce que vous avez obtenu comme résultat, c'est exactement ça que je cherche à faire.
Malheureusement j'ai du mal à comprendre votre code car je débute à peine. N'aurait-il pas moyen de intégrer une animation similaire dans mon code pour ne pas avoir à tout recommencer et aussi ne pas passer par un objet littéral ?
Je vous remercie de votre compréhension.