Переместить div с помощью клавиши со стрелкой в ​​JQuery 1.6.1 не работает

В JQuery 1.6.1 мы можем использовать += или же -= с css() так же, как мы можем сделать с animate(), но это не работает. Кто-нибудь видит проблему с кодом?

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

Проверьте http://jsfiddle.net/QLFEy/3

2 ответа

Решение

Ваш код правильный и должен работать. Глядя на трекер ошибок jQuery, я нашел уже открытый билет на это по адресу http://bugs.jquery.com/ticket/9237. Работает с шириной и высотой, но не слева, по крайней мере. Согласно заявке, исправление должно быть доступно в 1.6.2.

Обновление 13.05.11

Проблема была исправлена, и в настоящее время исправление доступно в версии WIP, которую можно найти по адресу http://code.jquery.com/jquery-git.js. Это самая последняя непроизводственная версия jQuery с последними исправлениями. Исправление должно быть официально доступно в следующей версии 1.6.2.

Очевидно, ошибка в JQuery. Кажется, что jQuery не добавляет "px" после значения.

[2011-05-12 21:46:17] CSS - file://localhost/D:/test.html
DOM style property
Invalid value for property: margin-left
Line 1:
  260
  ---^
Другие вопросы по тегам