[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: animate
nugle
можно ли в animate вызвать обратную функцию?
идея такая, есть скрипт, хочу чтобы offset менялся как анимация!
$(document).ready(function(){

$('#next').live('click', function(){

first = $('#block').offset().left;
newF = first + 100;
$('#block').offset({left: newF});

})
})




Спустя 1 час, 12 минут, 30 секунд (29.04.2011 - 19:22) liw написал(а):
Ну если прикинуть что jquery при изменении offset добавляет элементу
position:relative и ставит заданный left,
то чем тебя не устраивает вариант с функцией animate?
http://jqapi.com/#p=animate

Т.е. что то вроде: http://jsfiddle.net/EtAXP/1/

   $('#next').live('click', function(){

first = $('#block').offset().left;
newF = first + 100;
//$('#block').offset({left: newF});

// и то, только если ещё не установлено в relative

$('#block').css({'position':'relative'});
// анимация
$('#block').animate(
{'left':newF},
'slow',
function(){
console.log('end of animation');
}
)


})

Спустя 12 минут, 54 секунды (29.04.2011 - 19:35) nugle написал(а):
liw
спасибо, что такое console.log?

Спустя 4 минуты, 28 секунд (29.04.2011 - 19:40) liw написал(а):
консоль firebug-а, просто для отладки

Спустя 4 минуты, 6 секунд (29.04.2011 - 19:44) nugle написал(а):
спасибо, всё понятно!

Спустя 28 минут, 12 секунд (29.04.2011 - 20:12) nugle написал(а):
попробывал написать так, но блок движаться на 50px влево, а назад на 100px..Почему так?

block = $('#block');    
first = block.offset().left;
newF = block.offset().left;

$('#next').live('click', function(){

newF = first + 100;

block.css({'position':'relative'});
// анимация
block.animate(
{'left':newF},
'slow'
)
if(newF != first)
{

$('#back').live('click', function(){

newF = first - 100;
block.css({'position':'relative'});
// анимация
block.animate(
{'left':newF},
'slow'
)
})
}
}
)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.