在JQUERY中,我正在尝试创建一个简单的叠加层,当您在content1
上悬停时,它会消失并显示content2
。然后,content2
的 mouseout 再次出现content1
。
当鼠标移过content2
mouseout 事件触发器时,annoyingdiv
有annoyingdiv
,此工作正常。我该如何解决这个问题?或者这是如何解决的?
HTML
<div class="content1">blah blah</div>
<div class="content2">
<div class="annoyingdiv">
blah blah
</div>
</div>
Jquery javascript
$(function () {
$('.content1').hover(function () {
$(".content2").css("display", "block");
$(this).css("display", "none");
});
$('.content2').mouseout(function () {
$(".content1").css("display", "block");
$(this).css("display", "none");
});
});
答案 0 :(得分:4)
使用mouseleave
event代替mouseout
事件。
答案 1 :(得分:2)
使用CSS。
证明:http://jsfiddle.net/iambriansreed/vaQTU/
HTML:
<div class="parent">
<div class="content1">blah blah content1</div>
<div class="content2">
<div class="annoyingdiv">
blah blah annoyingdiv
</div>
</div>
</div>
CSS:
.parent .content2 {
display: none;
}
.parent:hover .content1 {
display: none;
}
.parent:hover .content2 {
display: block;
}