Quelqu'un peut-il suggérer comment faire en sorte que les boîtes permutées changent la couleur d'arrière-plan du clic lors de l'utilisation du plugin ci-dessous?Personnalisation du plugin swap() pour animer la couleur d'arrière-plan
http://www.vertstudios.com/blog/swap-jquery-plugin/ (voir la démo)
Je ne suis pas sûr de savoir comment créer un lien vers plugins dans jsFiddle ne peut donc pas démontrer malheureusement.
Les méthodes animent la position de toutes les boîtes affectant seulement celles où la position a changé. J'essaie d'ajouter une méthode qui anime la couleur de fond de la même manière mais sans succès.
Je ne pense pas que ce soit possible sans personnaliser le plugin mais je peux me tromper.
Mise à jour:
Merci Johan. J'aurais dû dire que j'ai vraiment besoin de la couleur d'arrière-plan pour revenir à la valeur par défaut après le swap. J'ai déjà essayé votre solution avec l'amendement ci-dessous. Comme vous pouvez le voir, il se comporte de manière incohérente. Je pense que la façon de le faire correctement est de personnaliser la méthode fakeFloat.
$("#swapTrigger").click(function()
{
var index1 = $('input:radio[name=index1]:checked').val();
var index2 = $('input:radio[name=index2]:checked').val();
boxes = $(boxes).swap(index1,index2);
var $box1 = $('.box').eq(index1);
var $box2 = $('.box').eq(index2);
var randomHex = '#fc0';
$box1.animate({ backgroundColor: "#fc0" }, 300);
$box2.animate({ backgroundColor: "#fc0" }, 300);
$(boxes).fakeFloat({margin: 10, offset: 20, speed: 300}).each(function()
{
$box1.animate({ backgroundColor: "#fff" }, 300);
$box2.animate({ backgroundColor: "#fff" }, 300);
$(this).html($(this).getIndexOf(boxes));
});
Et que se passe-t-il lorsque vous essayez d'animer la backgroundcolor? Est-ce que le problème est que la couleur n'est pas en train de changer? Ou votre feu ne se déclenche-t-il pas au bon moment? – Johan
Le code se répète et anime toutes les cases pour que la couleur change pour chacune d'entre elles - pas seulement pour celles permutées. Je pense que la solution est de passer la valeur backlgroundcolor par défaut à la méthode fakeFloat où toutes les boîtes sont animées. Sauf changer la valeur backgroundcolor de l'index des boîtes à échanger. Je ne peux pas comprendre comment le faire. – user1405195
Je suppose que vous passez les index des éléments que vous voulez échanger, non? Et c'est les mêmes boîtes que vous voulez changer de couleur? – Johan