Я пытаюсь анимировать div (подсказку) следующим образом:
tip.animate({'top': '+=20px', 'opacity': 'toggle'}, 300);
Я использую его в качестве всплывающей подсказки, поэтому перед этим я помещаю подсказку относительно курсора следующим образом:
setTip = function(top, left){
var topOffset = tip.height();
var xTip = (left-30)+"px";
var yTip = (top-topOffset)+"px";
tip.css({'top' : yTip, 'left' : xTip});
Функция setTip работает хорошо, так как правильно устанавливает div, но когда я пытаюсь анимировать, div в верхней позиции устанавливается в 20px.Я использовал console.log, чтобы проверить yTip.Это похоже на то, что свойство animate top сбрасывает позицию top css на 0, а затем добавляет 20px, потому что div оживляет правильно, но вверху страницы и по горизонтали это правильно.
Я изменил анимацию, чтобы оставить ее для проверки, и произошло то же самое.Div правильно анимирован с верным вертикальным положением, но горизонтальное положение было на левой стороне страницы на 20 пикселей от левой стороны.
Кто-нибудь видел это раньше или у меня есть идея, что я делаю неправильно?Спасибо за помощь.
Ник