首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jquery如何使鼠标输入仅在3秒后生效,并在鼠标离开时中止

jquery如何使鼠标输入仅在3秒后生效,并在鼠标离开时中止
EN

Stack Overflow用户
提问于 2011-08-03 22:06:35
回答 2查看 193关注 0票数 0

我认为这很简单,但它似乎比预期的更复杂。

我想做一个工具提示。当鼠标进入一个div时,会弹出一个新的div。当离开div时,新的div必须离开。到目前一切尚好。更复杂的是,只有当鼠标在div上超过3秒时,新div才会出现,如果不是,则必须中止鼠标输入。

这是我目前的代码:

代码语言:javascript
运行
复制
$('.go_info').live("mouseenter", function(){
var q_tooltip_img = $(this).attr('id');
setTimeout( function()
{
$("#tooltip_"+q_tooltip_img).show();
}, 2000);
}); 

$('.go_info').live("mouseleave",function(){

var q_tooltip_img = $(this).attr('id');
$("#tooltip_"+q_tooltip_img).hide();    
});

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-08-03 22:11:19

尝尝这个

代码语言:javascript
运行
复制
var mouseEnterTimer;
$('.go_info').live("mouseenter", function(){

  var q_tooltip_img = $(this).attr('id');
  mouseEnterTimer = setTimeout( function()
  {
     $("#tooltip_"+q_tooltip_img).show();
  }, 3000);

}); 

$('.go_info').live("mouseleave",function(){
  if(mouseEnterTimer)
    clearTimeout(mouseEnterTimer);

   var q_tooltip_img = $(this).attr('id');
   $("#tooltip_"+q_tooltip_img).hide();    
});
票数 2
EN

Stack Overflow用户

发布于 2011-08-03 22:17:34

试试这个:http://jsfiddle.net/aYThd/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6927779

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档