2011-05-12 17 views
15

En jQuery 1.6.1, que supuestamente pueden utilizar += o -= con css() al igual que podemos ver con animate(), pero esto no está funcionando. ¿Alguien ve un problema con el código?div Mover con tecla de flecha en jQuery 1.6.1 no funciona

$(document).keydown(function(e) { 
    if (e.which == 37) { //37 left arrow key. 
     $('div').css('left', '-=10px') 
    } 
}); 

Comprobar http://jsfiddle.net/QLFEy/3

+2

Nota del moderador: los comentarios sobre esta pregunta se han eliminado debido a los indicadores de la comunidad en los comentarios que rápidamente darían lugar a una conversación inconexa y confusa una vez eliminada automáticamente. –

Respuesta

16

Su código es correcto y debería funcionar. Mirando el rastreador de errores jQuery, encontré un ticket ya abierto para esto al http://bugs.jquery.com/ticket/9237. Funciona con ancho y alto, pero no con la izquierda al menos. De acuerdo con el billete, revisión debe estar disponible en 1.6.2

Actualización 05/13/11

El tema ha sido fijado y la solución está actualmente disponible en la versión WIP que se puede encontrar en http://code.jquery.com/jquery-git.js. Esta es la última versión no productiva de jQuery con las correcciones más recientes. La solución debería estar oficialmente disponible en la próxima versión 1.6.2.

+2

El error hace referencia a las propiedades con guiones. 'left' no tiene guiones. –

+0

@Rocket Familiarícese con jQuery changlog antes de publicar. De acuerdo con el registro de cambios de jQuery 1.6, podemos usar left, http://blog.jquery.com/. – Pinkie

+0

@Pinkie: Por favor, familiarícese con esta pregunta (usted lo pidió). De acuerdo con el jsFiddle que publicaste, no podemos usar el izquierdo, parece ser un error. –

1

Obviamente un error en jQuery. Parece que jQuery no agrega "px" después del valor.

[2011-05-12 21:46:17] CSS - file://localhost/D:/test.html 
DOM style property 
Invalid value for property: margin-left 
Line 1: 
    260 
    ---^ 
+0

heh? ¿De dónde vino 'margin-left'? – Neal

+1

He probado varias propiedades CSS. es extraño que funcione para altura, ancho pero no para relleno, margen, izquierda, etc. – seler