jQuery – 如何检测鼠标还没有#a和#b

前端之家收集整理的这篇文章主要介绍了jQuery – 如何检测鼠标还没有#a和#b前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
Html代码
<div id="a"></div>
<div id="b"></div>
<div id="Box"></div>

如何检查鼠标是否未结束#a& #b然后运行该函数

$("#a").mouseleave(function () {
$("#Box").fadeOut(800));
});

解决方法

你需要保持鼠标是在A还是B中的“缓存”,最后你需要检查两者是否处于“out”状态,然后运行你的fadeOut函数.一句警告,允许用户几毫秒从一个过渡到下一个,否则你会发现它没有按预期工作.

这段代码应该这样做,这里有一个实例:http://jsfiddle.net/jzCjD/

var inArr = {a:false,b:false};

$('#a,#b').mouSEOver(function(){
    inArr [$(this).attr('id')] = true;
});


$('#a,#b').mouSEOut(function(){
    inArr [$(this).attr('id')] = false;

    setTimeout(function(){ 
          if(!inArr.a && !inArr.b) 
              $('#Box').fadeOut(800) 
    },100);
});
原文链接:https://www.f2er.com/jquery/177086.html

猜你在找的jQuery相关文章