Перейти к содержимому

Фотография

Повторение анимации при mouseover - mouseuot


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 4

#1 Дмитрий Калугин

Дмитрий Калугин

    Коммерсант

  • Киберсанты
  • PipPipPipPip
  • 202 сообщений
71
Очень хороший
  • Пол:Мужчина

Отправлено 31 Август 2011 - 15:48

Привет, всем. Проблема следующая (ну не столько проблема, сколько неприятная мелочь)... Следующий код будет выполняться когда курсор будет над объектом и когда уйдет с объекта.

$(this).mouseover(function(){$(this).fadeIn()})
$(this).mouseout(function(){$(this).animate({opacity: 0.5})})

Но если быстро провести над объектом несколько раз, то код повторится такое же количество раз. Как можно этого избежать?
  • 0
Помогая другим - мы учимся сами.

На правах рекламы

#2 Артём Еремеевский

Артём Еремеевский

    Свой человек

  • Киберсанты
  • PipPipPipPipPip
  • 2 144 сообщений
842
Очень хороший
  • Страна, Город:
    Россия, Красноярск
  • Пол:Мужчина

Отправлено 31 Август 2011 - 21:17

http://api.jquery.com/hover/

$(this).hover(function(){
  $(this).fadeIn();
}, function(){
  $(this).fadeTo(0.5);
})

Хотя это вряд ли от повторения анимации поможет, скорее от ложных срабатываний, кои при раздельном использовании mouseover, mouseout бывают.

В вашем случе нужно можно использовать плагин hoverIntent: http://cherne.net/br...overIntent.html
В кратце, он запускает событие mouseover, если курсор не просто попал в элемент, но и остановился там. Попробуйте на странице плагина первый пример (стандартный hover) и второй (hoverIntent) - очень наглядно.
  • 1

#3 Дмитрий Калугин

Дмитрий Калугин

    Коммерсант

  • Киберсанты
  • PipPipPipPip
  • 202 сообщений
71
Очень хороший
  • Пол:Мужчина

Отправлено 01 Сентябрь 2011 - 06:53

Хотя это вряд ли от повторения анимации поможет, скорее от ложных срабатываний, кои при раздельном использовании mouseover, mouseout бывают.


Я сначало именно hover и пробовал, но hover еще и по unbind() нельзя снять, поэтому пришлось делать на mouseover и mouseout. За ссылку огромное спасибо, то что нужно. Но придеться ее покопать т.к. сам хочу понять как работает.
  • 0
Помогая другим - мы учимся сами.

#4 Артём Еремеевский

Артём Еремеевский

    Свой человек

  • Киберсанты
  • PipPipPipPipPip
  • 2 144 сообщений
842
Очень хороший
  • Страна, Город:
    Россия, Красноярск
  • Пол:Мужчина

Отправлено 01 Сентябрь 2011 - 08:34

Я сначало именно hover и пробовал, но hover еще и по unbind() нельзя снять


Потому что hover - это не событие, а быстрая функция для mouseover/mouseout, соответственно и снимать по unbind нужно отдельно mouseover и mouseout.
  • 0

#5 Дмитрий Калугин

Дмитрий Калугин

    Коммерсант

  • Киберсанты
  • PipPipPipPip
  • 202 сообщений
71
Очень хороший
  • Пол:Мужчина

Отправлено 01 Сентябрь 2011 - 09:53

hover - это не событие, а быстрая функция для mouseover/mouseout


Да, да, да... Именно это я тут и прочитал http://api.jquery.com/hover/ :rolleyes:
Но это было после...

Сообщение отредактировал diamond82: 01 Сентябрь 2011 - 09:54

  • 0
Помогая другим - мы учимся сами.




Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 скрытых пользователей