繁体   English   中英

在悬停时添加一个类在第二次悬停时删除类

[英]Add a class on hover remove class on second hover

我想在悬停时添加一个类,但在鼠标离开时不将其删除。 相反,它必须在第二次鼠标悬停时删除。 所以在鼠标悬停时添加类。 鼠叶类依然。 鼠标再次悬停类被删除。

这段代码添加了类,但如果鼠标离开类,则会删除该类,这不是我想要实现的。

jQuery('.menuButton').hover(function(){
  jQuery('.mainMenuDrop').addClass('show')
}, function() {
  jQuery('.mainMenuDrop').removeClass('show')
});

要实现在第一次输入时添加并在第二次输入时删除的要求,您可以更改现有代码:

jQuery('.menuButton').hover(function(){
  jQuery('.mainMenuDrop').addClass('show')
}, function() {
  jQuery('.mainMenuDrop').removeClass('show')
});

使用 .toggleClass

jQuery('.menuButton').hover(function(){
  jQuery('.mainMenuDrop').toggleClass('show')
}, function() {
  // nothing here
});

在jQuery .hover结合只是语法mouseentermouseleave ,你不需要mouseleave ,这可以简化为:

 jQuery('.menuButton').on("mouseenter", function() { jQuery('.mainMenuDrop').toggleClass('show'); });
 div { border: 1px solid black; padding: 20px; width: 100px; } .show { background-color: pink; }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div class='menuButton'>point at me</div> <div class='mainMenuDrop'>changes here</div>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM