[英]how to toggle between font awesome icons jquery
i want to togggle between to font awesome icons.I have tried我想在字体真棒图标之间切换。我试过了
$(document).ready(function () {
$("#minus").click(function () {
$("#tog").slideToggle();
if ( $("#minus").hasClass("fas fa-minus")) {
$("#minus").addClass("fas fa-plus")
}else {
$("#minus").addClass("fas fa-minus")
}
})
})
$("#minus").click(function () {
$("#tog").slideToggle();
$("#minus").toggleClass("fas fa-plus")
})
})
$(document).ready(function () {
$("#minus").click(function () {
$("#tog").slideToggle();
if ( $("#minus").hasClass("fas fa-minus")) {
$("#minus").addClass("fas fa-plus")
}else {
$("#minus").removeClass("fas fa-plus")
}
})
})
but neither of the codes above works.How can i toogle between the two different icons但上面的代码都不起作用。 我如何在两个不同的图标之间切换
Looks like you are adding new class but not removing the previous class when adding a new class so the element displays the icon class of which comes last in the stylsheet.看起来您正在添加新类,但在添加新类时未删除前一个类,因此该元素显示样式表中最后出现的图标类。
$("#minus").click(function () {
$("#tog").slideToggle();
if ( $("#minus").hasClass("fas fa-minus")) {
$("#minus").addClass("fa-plus").removeClass('fa-minus')
}else {
$("#minus").addClass("fa-minus").removeClass('fa-plus')
}
})
A better implementation would be using .toggleClass() :更好的实现是使用.toggleClass() :
$(document).ready(function () { $("#minus").click(function () { $("#minus").toggleClass( "fa-minus" ); $("#minus").toggleClass( "fa-plus" ); }) })
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css"> <script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script> <i id="minus" class="fa fa-minus fa-2x" aria-hidden="true"></i>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.