WEB开发人员有时候经常用到延时操作的用户交互事件,比如聚美优品网站首页的产品展示,当鼠标移入产品1秒钟后,会显示产品的详情,而不希望用户的鼠标指针刚刚移入元素就显示详情,对于不希望显示详情的用户来说,达到了友好的交互作用,下面就要使用jQuery的计时器setTimeout,具体代码如下:
HTML代码
jQuery实现鼠标滑过延时显示的效果-拓源网
$(function(){
$('.post').mouSEOver(function(){
hideTimer=setTimeout("$('.post > .demo').show();",1000);//鼠标滑过元素1秒钟显示子元素
}).mouseleave(function(){
clearTimeout(hideTimer);//清除计时器
hideTimer=setTimeout("$('.post > .demo').hide();",10);//鼠标移除元素区域子元素消失
});
});
鼠标停留此处1秒钟有惊喜!恭喜看到一个温暖的颜色。
为了不让鼠标移入后立即移出该元素也同样显示子元素,需要使用clearTimeout(hideTimer)来清除计时器,这样就能有效防止该问题发生。