jquery mouseover事件两次触发

时间:2013-12-09 10:38:11

标签: javascript jquery html

    $(function(){
    $('#webs').mouseenter(function(){
        $('#websitehov').fadeIn('slow');
    });
    $('#webs').mouseleave(function(){
        $('#websitehov').fadeOut('slow');
    });
});

我知道有很多问题但是我已经尝试了很多但仍然没有工作,我尝试了不同的事件处理程序,包括.hover,.mouseover和.mouseenter。 图像悬停/悬停效果在进入时会多次触发,每当我在图像中移动鼠标时,两个事件就会开始触发。 我找到了一个阻止这个的解决方案:

(function(){
$('#webs').hover(function(){
$('#websitehov').fadeIn('slow')
}, function() { });
});

但这只适用于悬停而不是悬停,因为空函数是mouseout事件处理程序,idk如果你可以覆盖它?

1 个答案:

答案 0 :(得分:2)

我能看到的唯一可能的问题是动画排队,在添加另一个

之前清除动画队列
$(function () {
    $('#webs').hover(function () {
        $('#websitehov').stop(true, true).fadeIn('slow');
    }, function () {
        $('#websitehov').stop(true, true).fadeOut('slow');
    });
});

演示:Fiddle