我有这个演示站点最多:
如果你将鼠标悬停在主头(不在IE)。你会注意到图像有点变化,
这就是我想要的。
但是,敏锐的目光会注意到,如果您将鼠标悬停在开关上,它将排队等待事件。
我该如何阻止它做这种行为?
我有这个演示站点最多:
如果你将鼠标悬停在主头(不在IE)。你会注意到图像有点变化,
这就是我想要的。
但是,敏锐的目光会注意到,如果您将鼠标悬停在开关上,它将排队等待事件。
我该如何阻止它做这种行为?
jQuerys .stop()
来救援。
$('#element').stop(true, true).animate({});
如果你正在做任何形式的动画与jQuery,stop()
将结束队列中。第一个参数表示是否清除完整队列,第二个参数表示是否跳转到当前正在运行的动画的结尾。
您在这里获得的另一个选项是检查元素是否为当前动画,如果是,则跳过新的.animate
方法。例如:
$('#element').hover(function(){
if(!$(this).is(':animated'){ // only go in here if $(this) is NOT animated
// $(this).animate({});
}
}, function(){
});
在这个插件请看:http://cherne.net/brian/resources/jquery.hoverIntent.html
hoverIntent是试图 来确定用户的意图插件......像 水晶球,只用鼠标 运动!它的工作原理类似于(并且源自jQuery的内置悬停的 )。 但是,调用onMouseOver函数,而不是立即 而不是立即 等待,直到用户的鼠标在拨打电话前减慢 。
听起来非常有用,感谢分享链接:) – migajek 2010-08-29 09:41:13
.stop(true和false)。工作完美。 我唯一的问题是,在你呼叫停止之后(例如,当你关闭鼠标时)它会造成一些延迟。 这是为什么? – Hailwood 2010-08-29 09:37:39