JQuery, то отключить / игнорировать события Hover в затемнение?


Я пытаюсь понять, возможно ли это.. У меня есть карта изображений, которая действительно исчезает / исчезает на основе парения над определенными частями.. проблема в том, что когда пользователь переходит в другую область во время затухания, он завершает затухание, которое он делал, а затем делает то, в которое была перемещена мышь.. если пользователь быстро перемещается между несколькими различными областями, то затухания кажутся очень нервными и неудобными, поэтому я хочу иметь возможность отключить событие наведения (затухание) в течение времени, которое происходит еще одно затухание, поэтому он просто игнорирует его..

Я думал о том, чтобы использовать какую-то задержку, но я не знаю, Может ли это сработать, так как я думаю, что это также задержит затухание.. любой совет ценится.

2 5

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.

Ссылки: : анимированный селектор, .стоп!(), . есть()