javascript - 当我的按钮悬停时,mouseleave 并不总是触发

标签 javascript jquery

我使用此代码在鼠标悬停时突出显示我的按钮:

$("#fileupload").mouseenter(function () {
    $("#myLink").css("background-color", "#495461");
}).mouseleave(function () {
    $("#myLink").css("background-color", "#3C454F");
});  

它可以工作,但是当单击此按钮(因此鼠标悬停)时,会显示一个模式窗口来选择文件,因此在这种情况下,鼠标离开永远不会进行。

我的问题:如何解决此问题,以便在显示此模态时让我的背景颜色恢复为“正常”(#3C454F)。我宁愿避免在单击此按钮后放置一些代码,而是将所有内容都集中在上面的一个代码块中,因为这里我简化了问题...

最佳答案

这应该通过 CSS 和 :hover 伪类来完成。

只需将此 CSS 规则添加到您的样式中即可。

#myLink {
  background-color:  #495461;
}

#myLink:hover {
  background-color:  #3C454F;
}

关于javascript - 当我的按钮悬停时,mouseleave 并不总是触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17527401/

相关文章:

javascript - 如何动态获取匹配的输入字段以将值添加到 Javascript 中的对象?

javascript - 自定义确认框,具有一些带有窗口关闭事件的功能

JQuery Mobile 内部哈希链接不起作用

javascript - 在动态 html 上添加 Keypress/keydown 事件

javascript - 在克隆主 div 后,面板颜色一次仅更改一次

javascript - 通过点击按钮刷新图像,无需刷新页面

javascript - 无法将表单提交按钮重新设置为禁用

javascript - 如何清除 .zip 队列?

javascript - 根据特定条件创建对象

javascript - 使用 jQuery 预加载图像