2012-03-09 39 views
5

Tôi đang gặp sự cố với mục có thể sắp xếp, có thể kéo khi tôi thả nó vào thùng rác có thể phản đối.
Mã nằm trong jsfiddle này. http://jsfiddle.net/queeg/sRAmW/1/jquery có thể sắp xếp, có thể kéo vào thùng rác có thể đối tượng

Nó thực sự dễ dàng để tạo lại vấn đề trong jsfiddle:

  1. kéo "bánh mì" để sortableA" Các 'sortableA' hộp mở rộng để cho phép các mục để phù hợp với

  2. kéo. "bánh mì" vào "Thùng rác" Thùng rác có thể mở rộng để chấp nhận mục, sau đó mục đó biến mất.

  3. kéo "bánh mì" từ "sortableA" vào "Thùng rác" Sự cố sẽ tự hiển thị. Thùng rác KHÔNG thể mở rộng và mục nhảy đến một số vị trí khác trước khi nó biến mất.

Trả lời

4

Một giải pháp có thể sẽ là để loại bỏ các position: absolute từ kéo khi thả vào thùng rác:

var element = ui.draggable.css('position', ''); 

DEMO

Khi đến từ các yếu tố #sortableX, chúng có quy tắc css này được áp dụng, nhưng không đến trực tiếp từ một trong hai danh sách.

+0

Có điều này dường như để giải quyết vấn đề rất tốt. Tôi đánh giá cao nó rất nhiều. –

+0

Bạn được chào đón. Hành vi thực sự kỳ lạ, phải có một lý do cho điều đó nhưng vẫn không thể hiểu được điều đó. –

+0

Tôi nhận thấy điều gì đó. Khi mục được kéo từ "sortableA" vào thùng rác, một vùng trống sẽ hiển thị. Nó vẫn hiển thị cho đến khi mục mất dần trong thùng rác. Có cách nào để tách mục đã kéo khỏi vùng chứa người gửi ngay khi nó bị bỏ không? –

1

Đó là bởi vì bạn đang cố gắng thêm một yếu tố ul bên trong một ul mà không phải là html hợp lệ và cũng là vì phong cách (left, top) nó không phải là vị trí đúng cách sau khi bạn kéo và thả nó vào trong thùng rác hiển thị như thể nó không được kéo đúng vào thùng rác.

Tôi đã cố định nó ở đây có một cái nhìn

http://jsfiddle.net/ShankarSangoli/sRAmW/3/

+0

Tôi đánh giá cao bất kỳ trợ giúp nào. Trong jsfiddle của bạn các mục không thể được kéo từ "sortableA" vào thùng rác nữa mà là chức năng sai. –

+0

HOÀN THÀNH THX điều này cố định vấn đề của tôi :) bây giờ tôi có thể thùng rác các đối tượng phân loại .. –

2

Gọi $('#sortable, #sortable2').droppable(); dường như thực hiện thủ thuật. Xem here.

+0

Hầu như.Nhưng khi thả từ "sortableA", thùng rác không thể mở rộng một chút như khi rơi khỏi danh sách. –

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