JQuery, то отключить / игнорировать события Hover в затемнение?
Я пытаюсь понять, возможно ли это.. У меня есть карта изображений, которая действительно исчезает / исчезает на основе парения над определенными частями.. проблема в том, что когда пользователь переходит в другую область во время затухания, он завершает затухание, которое он делал, а затем делает то, в которое была перемещена мышь.. если пользователь быстро перемещается между несколькими различными областями, то затухания кажутся очень нервными и неудобными, поэтому я хочу иметь возможность отключить событие наведения (затухание) в течение времени, которое происходит еще одно затухание, поэтому он просто игнорирует его..
Я думал о том, чтобы использовать какую-то задержку, но я не знаю, Может ли это сработать, так как я думаю, что это также задержит затухание.. любой совет ценится.
2 ответа:
Я думаю, что вы имеете в виду наращивание очереди проблема там. Попробуйте использовать
stop
метод перед методом анимации, например:$(...).stop().fadeIn();
Дополнительная Информация:
Http://www.learningjquery.com/2009/01/quick-tip-prevent-animation-queue-buildup
Что касается плавной анимации, вы можете пойти на jQuery Easing Plugin.
Не видя вашего кода, ваши инструменты представляют собой смесь метода
:animated
и метода jQuerys.stop()
.Это может выглядеть как
$('imagemap').hover(function(){ // only do something if no animation is in process (like fading) if(!$(this).is(':animated')){ } }, function(){ });
Вы также можете вызвать
.stop(true, true)
перед любым.fadeIn()
в вашей цепочке. Это остановит текущую анимацию и перейдет к концуfx queue
.Ссылки: : анимированный селектор, .стоп!(), . есть()