切换()不起作用

时间:2017-08-30 18:03:17

标签: javascript jquery

我试图使用函数toggle()来改变每次单击的类,但是这个函数只是隐藏了所选的元素

    $( "#bills-menu" ).toggle(function() {
       $("#bills-menu > .fa-sort-desc").removeClass("fa-sort-desc").addClass("fa-sort-asc");
}, function() {
       $("#bills-menu > .fa-sort-asc").removeClass("fa-sort-asc").addClass("fa-sort-desc");
  });

2 个答案:

答案 0 :(得分:1)

尝试运行下面使用toggleClass() JQuery函数的代码段。您还可以查看 CodePen Demo 。我希望它有所帮助。



$(document).ready(function() {
  $("span").click(function() {
    $(this).toggleClass("fa-sort-asc");
  });
})

#bills-menu {
  display: flex;
  justify-content: center;
  font-size: 5rem;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" />

<div id="bills-menu">
  <span class="fa fa-sort-desc" aria-hidden="true"></span>
</div>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

就我而言,.toggle()函数实际上是这样做的(http://api.jquery.com/toggle/),显示或隐藏元素。

你可能会做一些不同的事情,这取决于你如何调用该函数...你可以尝试使用toggleClass()方法(http://api.jquery.com/toggleclass/

如果您需要进一步澄清,请告诉我,我会提供一个代码示例,但我认为您应该首先查看该文档,如果有帮助则更新问题。