2010-12-07 4 views
5

ich Elemente von einer ungeordneten Liste in einer anderen verschieben:jQuery ziehbar/abwerfbaren: Zugang zum ursprünglichen Elemente

$('ul#drag li').draggable({ helper: 'clone' }); 
$('ul#drop').droppable({ 
    drop: function (event, ui) { 
     ui.draggable.sourceElement.css(... ...); 
    } 
}); 

Ich mag markiere bereits Elemente gezogen in Quellenliste (aber immer noch erlauben, sie zieht) , Wie kann ich über die jQuery-Kette darauf zugreifen?

Ich glaube, ich einstellen kann id Attribut auf dem Elemente gezogen, und beim Löschen, die geklonte Element würde die gleichen id, was ich das Original bei der Suche verwenden können, aber ich bin sicher, dass es eine schönere Lösung.


Antwort

6

Ich frage mich, warum ich nicht bemerkt, dass die folgenden Werke, das erste Mal, dass ich es versucht:

ui.draggable.css('whatever'); 

Es ist sogar documented:

ui.draggable - aktuelle ziehbar Element ein jQuery-Objekt

+1

die interessante Frage wird: wie der Stil zu entfernen, wenn das Objekt aus dem Ziel wieder ... – xtofl

+0

@xtofl gezogen wird: I 'Daten verwendet()' zu Speichere die ID des Quellelements beim Ereignis drop und wenn du das Element aus der zweiten Liste zurückziehst (zurück zum ersten), benutze diese gespeicherten Daten, um das Original zu finden ... –

5

e.target bezieht sich auf das ursprüngliche Element

+0

$ (e.target) .method() = Was auch immer tun Sie tun mit htmlnode –