我有两个divs
彼此靠近。当我将鼠标悬停在div一上时,div二显示。
如果我不将鼠标悬停在div
两个上,它应该淡出。或者,如果我将鼠标从div
移动到其他地方,那么div
两个应该淡出。
$(".one").mouseover(function () {
$(".two").show();
});
$(".two").mouseleave(function () {
$(".two").fadeOut(1);
});
答案 0 :(得分:2)
您可以在正文上添加mouseover
事件,并根据当前目标执行操作。如果鼠标悬停在身体的任何位置.one
和.two
$("body").mouseover(function (e) {
if(!($(e.target).is('.one') || $(e.target).is('.two'))){
$(".two").fadeOut();
}
});
<强> Updated Fiddle 强>
答案 1 :(得分:1)
更新了您的Fiddle。
您可以使用其他父div
并将事件绑定到它,而不是.one
和.two
。
答案 2 :(得分:0)
检查一下。
$(".one").hover(function () {
$(".two").show();
},function(){
if($(".two:hover").length==0) {
$(".two").fadeOut();
}else{
$(".two").mouseleave(function () {
$(".two").fadeOut();
});
}
});
答案 3 :(得分:-1)
我是靠自己做的。
$(".one").mouseover(function () {
$(".two").show();
});
$(".one").mouseleave(function () {
if($(".two").is(":hover")){
}else{
$(".two").fadeOut();
}
});
$(".two").mouseleave(function () {
if($(".one").is(":hover")){
}else{
$(".two").fadeOut();
}
});