J'utilise l'interface utilisateur Jquery pour développer une interface utilisateur de glisser-déposer, je veux limiter la quantité de LI (limitée à 5) abandonnée dans une région spécifique, et remplacer ceux qui sont en cours si un utilisateur les dépose les uns sur les autres. Comment cela peut-il être fait? J'utilise actuellement une version modifiée du photomanager sur le site de jquery ui.Comment limiter la quantité de LI en utilisant jquery
2
A
Répondre
1
vous pouvez vérifier le nombre de LI dans la région et à partir de 5+ vous remplacez les LI réels. Permet de voir:
On Drop event:
if($("#region li").length<5){
//do your normal drop handling
}else{
//replace one of the actual li's with the dragged one
}
est-ce utile?
1
J'ai récemment fait cela d'une manière différente. Au lieu d'empêcher la zone à largable, je voudrais juste ramasser tout LI excédentaire, et l'ajouter à la piscine de possibles simplement en ajoutant de nouveau le dernier enfant
$('#pool').append($('#container li:last-child'));
Voir si cette approche vous convient ..
Merci, mais ça n'a pas vraiment, voici mon code 'if ($ (longueur "# favoris li") <5.) { favourites.droppable $ ({ \t accepter: « # icon-galerie ul> li ', \t drop: function (ev, ui) { deleteImage (ui.draggable); } }); } else { $ favourites.droppable ({désactiver: '# icon-gallery ul> li',}); } ' – ivordesign
J'ai réalisé que j'appliquais l'instruction if à l'événement drag et non à l'événement drop – ivordesign