我在使用jQuery MouseOut和MouseOver时遇到了一些问题。
每次我将鼠标悬停在选定的div上时,都会显示需要显示的子div。然而,它开始闪烁。
我不知道为什么。我已经在JsFiddle上发布了代码。
以下是HTML代码:
<div class="section-item-portal">
<div class="section-text">Lorem Ipsum Dolor Sit Amet, Lorem Ipsum Dolor Sit Amet, Lorem Ipsum Dolor Sit Amet, Lorem Ipsum Dolor Sit Amet, Lorem Ipsum Dolor Sit Amet, Lorem Ipsum Dolor Sit Amet, </div>
</div>
这是jQuery:
$(document).ready(function () {
$('.section-text').hide();
$('.section-item-portal').mouseover(function () {
$(this).children('.section-text').fadeIn();
});
$('.section-item-portal').mouseout(function () {
$(this).children('.section-text').fadeOut();
});
});
我将非常感谢你的帮助:)
答案 0 :(得分:7)
<强> DEMO 强>
改为使用mouseenter
和mouseleave
。
$(document).ready(function () {
$('.section-text').hide();
$('.section-item-portal').mouseenter(function () {
$(this).children('.section-text').fadeIn();
});
$('.section-item-portal').mouseleave(function () {
$(this).children('.section-text').fadeOut();
});
});
答案 1 :(得分:1)
试试这个
$(document).ready(function() {
$('.section-text').hide();
$('.section-item-portal').hover(function() {
$(this).children('.section-text').fadeIn();
},function(){
$(this).children('.section-text').fadeOut();
});
});
答案 2 :(得分:0)
在jQuery中,当鼠标进入匹配元素时,mouseover()和mouseenter()事件都会触发。唯一不同的是子元素中“事件冒泡”句柄的方式 价:http://www.mkyong.com/jquery/different-between-mouseover-and-mouseenter-in-jquery/
请在jsfiddle中找到答案.. http://jsfiddle.net/Dn6Rq/1/
$(document).ready(function () {
$('.section-text').hide();
$('.section-item-portal').mouseenter(function () {
$(this).children('.section-text').fadeIn();
});
$('.section-item-portal').mouseleave(function () {
$(this).children('.section-text').fadeOut();
});
});