2011-12-04 26 views
8

Tôi đang tạo giao diện người dùng có liên quan đến sắp xếp, trong đó có các mục danh sách có thể phân đoạn. Dưới đây là một fiddle của nó:Có thể sắp xếp và phân đoạn, có thể phân đoạn không cập nhật khi DOM thực hiện?

http://jsfiddle.net/NRkwx/

Vấn đề là thế này: khi bạn bắt đầu sắp xếp và di chuyển các mục trong danh sách trên, các droppables di chuyển quá, nhưng khu vực rằng họ là droppable để không . Bạn có thể thấy nó bằng cách di chuyển một số mục danh sách. Bạn sẽ nhận thấy, rằng nếu ví dụ: các droppable di chuyển một bước lên, bạn có thể thả nó từ vị trí ban đầu của nó, không phải từ nơi nó thực sự cư trú.

Làm cách nào để cập nhật vùng có thể phân tách? Tôi có nên loại bỏ các droppable và thêm nó vào sortable change?

Trả lời

12

Tìm thấy giải pháp! Tôi đã đi qua nguồn jQuery UI, và thấy điều này:

//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); 

Sau đó, tôi thêm vào tùy chọn này để sortable tôi:

refreshPositions: true 
Các vấn đề liên quan