【问题标题】:How to add and remove active class on click - angular way如何在单击时添加和删除活动类 - 角度方式
【发布时间】:2014-06-29 07:43:40
【问题描述】:

我就是这样的

 <div class="tiles" ng-repeat="stat in states" ng-click="select(stat)" ng-class="{active: isActive(stat)}">
    ....
    </div>

//控制器

$scope.select= function(item) {
    $scope.selected = item; 
};

 $scope.isActive = function(item) {
      return $scope.selected === item;

};

单击瓷砖它正在添加活动类并单击从第一个瓷砖中删除的其他瓷砖并添加到另一个瓷砖。它按预期工作。但我想要实现的是再次单击相同的瓷砖我必须删除活动类,再次点击我必须添加喜欢切换。但不知道如何实现这一点。请帮助

【问题讨论】:

    标签: javascript jquery angularjs


    【解决方案1】:

    更新您的选择函数以将selected 属性设置为null(如果它已被选中):

    $scope.select = function(item) {
        $scope.selected = ($scope.selected === item ? null : item); 
    };
    

    JSFiddle 示例

    http://jsfiddle.net/bATZ5/

    【讨论】:

      【解决方案2】:

      只需将您的代码更改为:

      $scope.select= function(item) {
          if (item === $scope.selected) {
              $scope.selected = null;
          } else {
              $scope.selected = item;
          }
      
      };
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2019-06-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多