2011-11-16 32 views
10

Làm cách nào để nghe sự kiện drag khi đang chụp jquery-ui-sortable?kéo sự kiện cho jquery-ui-sortable

Bằng chiến lược hit-n-trial, tôi đã thử sự kiện drag từ jquery-ui-draggable nhưng không hoạt động.

$('.widget_container').sortable({ 
    drag: function(event, ui) { console.log('drag'); } 
}); 

Trả lời

26

Sử dụng sort kiện cho mục đích này:

$(".sortable").sortable({ 
    sort: function(e) { 
     console.log('X:' + e.screenX, 'Y:' + e.screenY); 
    } 
}); 

http://jsbin.com/kegeb

+0

wow! người đàn ông khéo léo. tôi tự hỏi làm thế nào tôi đã bỏ lỡ điều đó. –

+1

Vì vậy, rõ ràng bây giờ mà tôi đã nhìn thấy nó ... haha. Hoàn hảo! – daGUY

1

Nếu bạn cần để xử lý sự kiện khi người dùng bắt đầu để kéo, bạn nên sử dụng handle thay vì sort:

$(".sortable").sortable({ 
    handle: function(e) { 
     console.log('Handled'); 
    } 
}); 

Sự kiện này sẽ diễn ra vào đầu kéo và khi trang được tải (http://api.jqueryui.com/sortable/#option-handle).

tôi đề nghị bạn cũng kiểm tra câu trả lời này, điều này giải thích cách đúng để xử lý các yếu tố của bạn khi danh sách của bạn được cập nhật: Get order of list items in a jQuery Sortable list after resort

Chúc may mắn

+0

Tôi đã thử phương pháp 'xử lý' và thấy rằng nó không thể phân biệt giữa việc nhấp và kéo và, lạ lùng, vô hiệu hóa tính năng nhấp để sắp xếp. – ariebear

Các vấn đề liên quan