Jquery鼠标悬停和mouseout一直闪烁

时间:2013-08-27 11:39:58

标签: jquery mouseover mouseout

我在使用jQuery MouseOut和MouseOver时遇到了一些问题。

每次我将鼠标悬停在选定的div上时,都会显示需要显示的子div。然而,它开始闪烁。

我不知道为什么。我已经在JsFiddle上发布了代码。

http://jsfiddle.net/Dn6Rq/

以下是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();
});

});

我将非常感谢你的帮助:)

3 个答案:

答案 0 :(得分:7)

<强> DEMO

改为使用mouseentermouseleave

$(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();
    });

});