2011-02-23 15 views
5

No creo que esté entendiendo correctamente el encadenamiento jQuery. Estoy bucle a través de una matriz y se trata de añadir elementos div a mi clase CSS envoltorio con cada elemento div que tiene una clase de 'clic' y superior CSS personalizado e izquierdo atributos, como esto:jQuery encadenando

$('<div></div>').appendTo('.wrapper').addClass('click').css('top',click.y).css('left'.click.x); 

pero fracasa para que funcione como se espera, agrega un elemento div, establece mi clase .wrapper div para 'hacer clic' y luego se detiene.

Si quito

.css('top',click.y).css('left'.click.x); 

funciona como se esperaba - la adición de nuevos elementos div div a la envoltura.

¿Cómo puedo hacer que esto funcione correctamente? Gracias

+3

Usted tiene un error después de la 'izquierda' de un punto en lugar de coma – mVChr

+0

Gracias que no facilita las cosas – CJD

Respuesta

20

Utilice un objeto JSON para .css.

.css({ 
    'left' : click.x, 
    'top' : click.y 
}); 
+1

Eso es sólo un objeto de regular de JS. Un objeto JSON sería una representación de cadena de la sintaxis del objeto JS. – treeface

+2

Mmm en realidad, el principal problema que tuve (había muchos) fue porque no estaba agregando "+ 'px'" a mis valores. – CJD

0

probar este

$('<div>/div>').appendTo('.wrapper').addClass('click').css({ 
    'top': click.y, 
    'left': click.x 
}); 
Cuestiones relacionadas