Переместить 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
Ответы
Ответ 1
Ваш код верен и должен работать. Глядя на jQuery-трекер ошибок, я нашел уже открытый билет для этого http://bugs.jquery.com/ticket/9237. Он работает с шириной и высотой, но не с левым, по крайней мере. Согласно билету, исправление должно быть доступно в 1.6.2
Обновление 05/13/11
Проблема была исправлена , и исправление в настоящее время доступно в версии WIP, которое можно найти в http://code.jquery.com/jquery-git.js. Это самая последняя не-производственная версия jQuery с последними исправлениями. Исправление должно быть официально доступно в следующей версии 1.6.2.
Ответ 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
---^