2011-12-04 11 views
8

Tworzę interfejs użytkownika, który zawiera elementy sortable, w których znajdują się przedmioty, które można zrzucić. Oto skrzypce z nim:Sortable & droppable, droppable nie są aktualizowane, gdy DOM ma?

http://jsfiddle.net/NRkwx/

Problem jest następujący: po uruchomieniu sortowania i przesunąć element listy dookoła, że ​​droppables przenieść też, ale obszar że są droppable nie robi . Możesz to zobaczyć, przenosząc niektóre elementy listy. Zauważysz, że jeśli np. droppable przesuwa się o jeden stopień wyżej, możesz upuścić go z pierwotnej pozycji, a nie z miejsca, w którym się znajduje.

Jak mogę zaktualizować obszar zrzucany? Czy powinienem usunąć droppable i dodać go na sortable change?

Odpowiedz

12

Rozwiązanie znalezione! Ja jechałem przez źródło jQuery UI, i stwierdziliśmy:

//If you have a highly dynamic page, you might try this option. It renders positions every time you move the mouse. 
if(draggable.options.refreshPositions) $.ui.ddmanager.prepareOffsets(draggable, event); 

Potem dodałem tej opcji do mojego sortable:

refreshPositions: true 
Powiązane problemy