切换其他li元素

时间:2019-01-25 01:19:13

标签: javascript jquery html

我有一个ul列表,其中一个li元素表示大拇指,其他li元素表示大拇指,当我单击每个大拇指时,我会根据大拇指的类型添加绿色或红色类别,但是只有一个可以处于活动状态或带有颜色,如果选择了其中的一个,则需要删除其他具有颜色(绿色或红色)的类

问题是我无法获取要检查是否具有类的元素。

我的代码:

 $('.approved').click(function (event) {
      event.preventDefault();
      $(this).toggleClass('bg-green');
    });

   $('.not-approved').click(function (event) {
     event.preventDefault();
 console.log($(this).parent().find('.approved').hasClass('bg-green'));
      $(this).toggleClass('bg-red');
    });

html:

<div class="options-tools pull-right">
                      <ul class="list-unstyled list-inline">
                        <li><a href="#"><i class="fa fa-thumbs-up approved" aria-hidden="true"></i></a></li>
                        <li><a href=""><i class="fa fa-thumbs-down not-approved" aria-hidden="true"></i></a></li>
                      </ul>
                </div>

基本上,当我单击大拇指朝下(。未批准)时,我会添加颜色类别“ bg-red”,但是在我需要检查“竖起大拇指”是否处于活动状态(bg-绿色)之前。

我做错了什么?

1 个答案:

答案 0 :(得分:1)

您是否尝试过$('.approved').hasClass('bg-green')hasClass可以帮助您确定元素是否具有特定的类。这是一个布尔值,因此如果具有该类,它将返回true,否则返回false。您无需先获取父项,然后再查找该类。如果没有标识符,则只需选择类别。