javascript - 在 mouseleave 上添加/删除类
问题描述
我在单击时打开了一个下拉菜单,当单击 font-awesome fa-bars 图标时,删除了 fa-bars 类,然后添加了 font-awesome fa-times 类。
我还有一个 mouseleave 函数,可以在鼠标退出时关闭下拉容器。我的问题是看看我是否可以在 mouseleave 上将图标类从 fa-times 更改为 fa-bars。
这是更改点击图标的代码
<a href="" class="btn megaNavBtn1" role="button"><i id="toggleMega" class="fa fa-bars megaNavIcon"></i></a>
$('#toggleMega').click(function(){
var ele = $('.megaNavIcon');
if(ele.hasClass('fa-bars')){
ele.removeClass('fa-bars')
.addClass('fa-times')
}
else{
ele.addClass('fa-bars')
.removeClass('fa-times')
}
});
这是在 mouseleave 上关闭容器的代码
$('.megaNav').on('mouseleave', function() {
$(".megaNav").collapse("hide");
});
解决方案
只需在函数中添加removeClass()
andaddClass()
方法,如下所示:mouseleave
$('.megaNav').on('mouseleave', function() {
$(".megaNav").collapse("hide");
$('#toggleMega').removeClass('fa-times');
$('#toggleMega').addClass('fa-bars');
});
或者您可以通过使用如下的toggleClass()方法进一步简化此操作:
$('.megaNav').on('mouseleave', function() {
$(".megaNav").collapse("hide");
$('#toggleMega').toggleClass(function(){
return $(this).hasClass('fa-times') ? 'fa-bars' : '';
});
});
推荐阅读
- python - 是否有可能获得中间梯度?(张量流)
- excel - VBA如何在分组项目列表中选择每个最后出现的字符串(最后一个项目修订版)
- git - 未找到 Git 恢复命令
- angular - 使用优化 = true(--prod 选项)构建或服务时出现角度“InvalidPipeArgument:缺少语言环境数据”
- javascript - 启用 enablePersistance 时,AngularFire 从缓存和服务器返回结果
- python - 无法获取一些文本。Python。硒
- docker - ./startFabric.sh 中的问题:来自守护程序的错误响应:容器未运行
- r - 使用两列的数据框中的百分位数
- amazon-web-services - 连接 AWS Lightsail、Route 53 和 Cloudfront
- discord.py - Discord.py 机器人音频流中断