Каков синтаксис CSS для jQuery для сложения и вычитания числовых значений? - PullRequest
4 голосов
/ 01 августа 2010

Я уверен, что видел это раньше. Вот как я это помню

$cnta.css({ top:'+=50' });

Излишне говорить, что это не работает: -)

Я знаю, что могу проанализировать значение css, манипулировать результатом и вернуть его обратно в css, но это занимает вдвое больше кода.


Спасибо за ответы!

1 Ответ

8 голосов
/ 01 августа 2010

Это работает для .animate():

$cnta.animate({ top:'+=50' }, 0);

Для .css() вы можете передать функцию, которая сделает дополнение за вас:

$ cnta.css('top', function (i, current) {return parseInt (current) + 50;});

$cnta.css('top', function(i,current) { return (parseInt(current) + 50 || 50); });​

EDIT: Изменена анимация с1 до 0.Как заметил @ Ник Крэйвер , анимация 0 будет работать.

РЕДАКТИРОВАТЬ: Дали лучший ответ для версии .css().Если top еще не присвоено какое-либо значение, выполнение .parseInt(current) вернет NaN.Обновлено, чтобы исправить это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...