2010-12-07 9 views
5

estoy arrastrando los elementos de una lista desordenada a otro:jQuery que pueden arrastrarse/lanzables: el acceso a elementos originales

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

Quiero marcar ya arrastrar elementos en la lista de fuentes (pero todavía permiten arrastrándolos) , ¿cómo puedo acceder a ellos a través de la cadena jQuery?

supongo que puedo establecer id atributo en el elemento arrastrado, y al caer el elemento clonado tendría el mismo id, que puedo utilizar en la búsqueda de la original, pero estoy seguro de que hay una solución mejor.


Respuesta

6

Me pregunto por qué no me di cuenta que las siguientes obras, la primera vez que lo probé:

ui.draggable.css('whatever'); 

Es incluso documented:

ui.draggable - elemento arrastrable actual , un objeto jQuery

+1

la pregunta interesante es: ¿cómo quitar el estilo cuando el objeto se arrastró fuera del objetivo de nuevo ... – xtofl

+0

@xtofl: 'He utilizado los datos()' para almacena la identificación del elemento fuente en el evento drop, y al arrastrar el elemento fuera de la segunda lista (de vuelta al primero), usa los datos almacenados para encontrar el original ... –

5

e.target se refiere al elemento original de

+0

$ (e.target) .method() = Haz lo que sea lo haces con htmlnode –

Cuestiones relacionadas