Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.09.2011, 21:56
BoB BoB вне форума
Аспирант
Отправить личное сообщение для BoB Посмотреть профиль Найти все сообщения от BoB
 
Регистрация: 13.04.2009
Сообщений: 39

Не правильное время анимации и область div'а
Добрый вечер.

Решил сделать страничку-визитку на JS используя jQuery, но при создании возникли некоторые проблемы.
  1. Выставляю время на анимацию 5секунд
    $("#tack_portfolio").animate({"top": "+=400px"}, "4000", 'easeInBack');
    
    , а она проходит за секунды, а то и меньше.
  2. Область при нажатии на фотографии определяется не правильно, я догадываюсь что это из-за моей корявой верстки, но из-за чего именно, не могу понять.

Собственно сама страничка http://moto-sale.net/lampo4ka/3/

Буду благодарен за любые советы
Ответить с цитированием
  #2 (permalink)  
Старый 29.09.2011, 22:04
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от BoB Посмотреть сообщение
Выставляю время на анимацию 5секунд
$("#tack_portfolio").animate({"top": "+=400px"}, *!*"4000"*/!*, 'easeInBack');
, а она проходит за секунды, а то и меньше.
взаимоисключающие параграфы

у вас в коде это
$("#tack_portfolio").animate({"top": "+=400px"}, "4000", 'easeInBack');
    $("#tack_portfolio").hide(0);

поставьте скрытие в обработчик завершения анимации.
Ответить с цитированием
  #3 (permalink)  
Старый 29.09.2011, 22:12
BoB BoB вне форума
Аспирант
Отправить личное сообщение для BoB Посмотреть профиль Найти все сообщения от BoB
 
Регистрация: 13.04.2009
Сообщений: 39

Сообщение от melky Посмотреть сообщение
взаимоисключающие параграфы

у вас в коде это
$("#tack_portfolio").animate({"top": "+=400px"}, "4000", 'easeInBack');
    $("#tack_portfolio").hide(0);

поставьте скрытие в обработчик завершения анимации.
Опечатался конечно, за 4 секунды, но и 4 секунд не проходит. Скрытие поставил на место.
Ответить с цитированием
  #4 (permalink)  
Старый 29.09.2011, 22:20
Профессор
Отправить личное сообщение для zebra Посмотреть профиль Найти все сообщения от zebra
 
Регистрация: 14.09.2011
Сообщений: 523

Вы скрываете див, до того как прошла анимация.
$("#tack_portfolio").animate({"top": "+=400px"}, "4000", function() {
   $("#tack_portfolio").hide(0);
});
Ответить с цитированием
  #5 (permalink)  
Старый 29.09.2011, 22:28
BoB BoB вне форума
Аспирант
Отправить личное сообщение для BoB Посмотреть профиль Найти все сообщения от BoB
 
Регистрация: 13.04.2009
Сообщений: 39

Сообщение от zebra Посмотреть сообщение
Вы скрываете див, до того как прошла анимация.
$("#tack_portfolio").animate({"top": "+=400px"}, "4000", function() {
   $("#tack_portfolio").hide(0);
});
А в документации написано по другому
Код:
.animate( properties, [duration,] [easing,] [complete] )

properties A map of CSS properties that the animation will move toward.

duration A string or number determining how long the animation will run.

easing A string indicating which easing function to use for the transition.

complete A function to call once the animation is complete.
Ответить с цитированием
  #6 (permalink)  
Старый 29.09.2011, 22:34
Профессор
Отправить личное сообщение для zebra Посмотреть профиль Найти все сообщения от zebra
 
Регистрация: 14.09.2011
Сообщений: 523

По другому это как?
Ответить с цитированием
  #7 (permalink)  
Старый 29.09.2011, 22:41
BoB BoB вне форума
Аспирант
Отправить личное сообщение для BoB Посмотреть профиль Найти все сообщения от BoB
 
Регистрация: 13.04.2009
Сообщений: 39

Сообщение от zebra Посмотреть сообщение
По другому это как?
complete A function to call once the animation is complete.
(Функция вызываемая по окончанию анимации)
Ответить с цитированием
  #8 (permalink)  
Старый 29.09.2011, 22:42
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

он сказал вам, в чем ваша ошибка, и написал правильный код.

не так поняли.
Ответить с цитированием
  #9 (permalink)  
Старый 29.09.2011, 23:00
BoB BoB вне форума
Аспирант
Отправить личное сообщение для BoB Посмотреть профиль Найти все сообщения от BoB
 
Регистрация: 13.04.2009
Сообщений: 39

Сообщение от melky Посмотреть сообщение
он сказал вам, в чем ваша ошибка, и написал правильный код.

не так поняли.
Не могли бы вы подробнее объяснить в чем ошибка.

Отличие которое я заметил только в удалении типа анимации(easing) и указания вместо элемента (this), ("#tack_portfolio").
Ответить с цитированием
  #10 (permalink)  
Старый 29.09.2011, 23:10
Профессор
Отправить личное сообщение для zebra Посмотреть профиль Найти все сообщения от zebra
 
Регистрация: 14.09.2011
Сообщений: 523

Сообщение от BoB
$("#tack_portfolio").animate({"top": "+=400px"}, "4000", 'easeInBack');
$("#tack_portfolio").hide(0);
Cкрипт не будет ждать 4 секунды до завершения анимации, а пойдет просто дальше и вызовет hide. Для того, чтобы знать когда завершится анимация и нужна callback функция
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Блокировка на время анимации kiff86 jQuery 5 29.08.2011 22:48
JQuery .hover() уход с элемента во время его анимации warobushek jQuery 1 20.04.2011 13:41