Как я могу вернуть jQuery Draggables в их исходный список после проверки их перетаскивания нажатием кнопки? - PullRequest
0 голосов
/ 05 августа 2010

Это немного странное желание, но я делаю игру с использованием jQuery UI и хочу, чтобы пользователь перетянул элемент из одного <ul> jQuery draggables (список A), а затем отбросилэто в jQuery droppable (список B).После того, как пользователь решил, что он считает, что каждый элемент из списка A находится в правильном месте в списке B, он может нажать кнопку, чтобы проверить свои ответы.

Здесь все становится сложно.После щелчка, чтобы проверить ответы, правильные элементы становятся зелеными и фиксируются на месте, а неправильные элементы просто остаются там в своих неправильных предметах.У кого-нибудь есть хорошие идеи о том, как я могу вернуть неправильные элементы обратно в список А?

Я могу опубликовать код, но я не совсем уверен, что это необходимо, мне просто нужны идеи и / или фиктивные реализации.

Спасибо!

**

РЕДАКТИРОВАТЬ:

Так что, благодаря Кену, это то, что я делаю ... Когда предмет брошенэто jQuery добавляет определенные css свойства к нему;position:relative, top и left изменены, так что элемент останется зафиксированным в его принятом месте выпадения.Чтобы отменить их, я просто сделал следующее (после добавления correctLoc к правильно уроненным предметам):

$('li:not(.correctLoc)').animate({top: 0, left: 0});

Спасибо, Кен!

**

1 Ответ

1 голос
/ 05 августа 2010

Когда вы проверяете правильность и делаете некоторые элементы зелеными, возможно, вы добавляете класс к этим элементам. Таким образом, чтобы сбросить неправильные элементы, может быть что-то вроде этого:

$('#listB')
    .find('li:not(.correct)')  // select wrong items
    .appendTo('#listA');       // insert into list A
...