jquery - 悬停事件在 jQuery 中触发两次(进入和离开时)?

标签 jquery hover

$(document).ready(function(){
    $("#menu a").hover(function(){
        $(this).animate({opacity: 0.25}, function(){
            $(this).animate({opacity: 1});
        });
    });
});

我将此效果应用于我的菜单,因此当鼠标移到链接上时,它会显示此淡入淡出效果,但是当鼠标从链接上释放时,该效果会再次播放。不应该。当鼠标悬停在链接上时,它应该只播放一次,而不是当鼠标移出时播放一次。

最佳答案

.hover() 有两个回调,一个用于 mouseenter,一个用于 mouseleave

使用 mouseenter 可能会更好:

$(document).ready(function(){
    $("#menu a").mouseenter(function() {
        $(this).animate({opacity: 0.25}, function(){
            $(this).animate({opacity: 1});
        });
    });
});

关于jquery - 悬停事件在 jQuery 中触发两次(进入和离开时)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8739112/

相关文章:

javascript - 构建当前的以类别为中心的导航

jquery - 找不到类型为 'jquery' 的文件 'application/javascript'

javascript - 没有使用 jasmine.js 和 sinon.js 调用backbone.js 点击事件 spy

javascript - 如何在微模式下更改 ExtJs 树列表中悬停在菜单上的样式

css - <a> 在悬停时启动不希望的悬停效果。这是怎么回事,有办法阻止吗?

javascript - 悬停时鼠标移动动画

javascript - 在 mouseenter 和 mouseleave 事件中使用 setTimeout

javascript - 更改容器上的 "overflow"属性不会在运行时更改内部元素大小?

jquery - 当另一个 div 悬停时,将悬停状态应用于多个 div

jQuery 悬停 - 在 Firefox 中不起作用