Если у меня есть
<div id="curve" style="position:relative; height:100px; width:100px; />
Как мне заставить его двигаться по кривой? Я googled и все, но не могу найти другой пример, который бы сразу вызвал две функции. Это тот код, который я бы хотел, но не работает:
$('#curve').click(function () {
$(this).animate(
{
top: 400,
left = $(this).left() + $(this).left()*$(this).left()
},
'slow',
function() { $(this).animate( { left: 600 }, 'fast' ); }
);
});
Даже если этот не правильный код, я считаю, что анимация требует только "пунктов назначения" для чего-то, что нужно сделать, поэтому динамическое назначение не будет работать, я думаю. Что я ищу, чтобы сделать эту работу?
EDIT:: Я обязательно подберу этот плагин, но мне также интересно, почему этот бит кода не работает, как я ожидал.
Здесь другая попытка использования цикла for и метода задержки
$('#curve').click(function () {
for (var i=0; i<400; i++ )
{
$(this).delay(1000);
$(this).css( { top: i, left: i*1.5 } );
}
});
Кроме того, он мгновенно переходит к этой позиции, без задержки или чего-то еще. поэтому, если он начинался с [0,0], как только я нажимаю на него, он телепортируется в [400,600]. Почему задержка не работает?