2010-01-08 6 views
2

Salut: Je cours un problème quand j'essaye de faire une baisse spéciale de traînée dans JQuery. En quelques mots. À partir du lien ci-dessus, vous pouvez voir que lorsque vous faites glisser les boîtes vers les zones de largage (les boîtes rouges de gauche), elles ne semblent pas être activées à moins que la boîte traînée atteigne le centre de la cible (la boîte droppable) élément qui semble être un problème dans le JQuery lui-même!?Précision draggable dans jQuery

Une autre chose, c'est qu'il n'y a aucun contrôle sur l'élément draggables car ils planent sur les droppables, par exemple, Puis-je faire glisser les draggables (pas la droppable) comme ils entrent dans les zones rétrogradables!

Toute aide, idée ou indice sera fortement apprécié. Merci beaucoup d'avance.

+1

Quel lien ci-dessus? – SLaks

Répondre

3

jQuery droppable a un option 'tolerance' qui contrôle cela. Il a 4 réglages: ajustement, intersection, pointeur, toucher. De votre description, il semble que vous vouliez «toucher» - le draggable est considéré comme se chevauchant dès qu'il touche le droppable.

$('.drop_area').droppable(
    { tolerance: 'touch' } 
); 
+0

On dirait que c'est la bonne solution pour moi. Basher, vous pouvez également utiliser l'événement "over" pour effectuer certaines actions quand un draggable survole un élément droppable. Dans ce cas, vous pouvez l'utiliser pour ajouter une hauteur/largeur au draggable afin de réduire sa taille, puis utilisez l'événement out pour redéfinir la taille. –