angularjs - 模糊除选定项之外的所有列表项

标签 angularjs twitter-bootstrap css

我有一个元素列表。当您单击一项时,它会展开。我想模糊除扩展项之外的所有列表项。

<li href="#" class="list-group-item" ng-repeat="task in taskVm.tasksdata | orderBy: 'NAME' | filter: search | statusFilter: taskVm.statusArray">
  <div class="row" ng-click="task.isCollapsed = !task.isCollapsed">
    <div class="col-md-5">
      <lable>[[::task.NAME]] </lable>
    </div>
    <div class="col-md-5 offset-md-1">
      <lable ng-class="taskVm.getStateClass(task.STATUS)">[[::task.STATUS]] </lable>
    </div>
    <div class="col-md-2">
      <i ng-click="taskVm.openAlternativeTask(task)" class="fa fa-question-circle-o fa-stack-1x pull-right"></i>
    </div>
  </div>
  <div uib-collapse="task.isCollapsed">
    <hr>
    <div class="row">
      <lable>[[::task.MESSAGE]] </lable>
    </div>
    <div class="row">
      <div class="row" ng-hide="task.M.length ===0">
        <hr>
        <label>Alternatives</label>
      </div>
      <div class="row">
        <ul class="alternatives-list list-group">
          <li class="list-group-item" ng-repeat="alternative in task.M" ng-click="showAlternative(alternative.ID, alternative.SETNUMBER); taskVm.setSelected(alternative.SETNUMBER)" ng-class="{selected: alternative.SETNUMBER === taskVm.idSelectedVote}">[[alternative.SETNAME]]</li>
        </ul>
      </div>
    </div>
  </div>
</li>

这是我的 list

最佳答案

它将把测试类应用到除第一个进入 ng-repeat 之外的所有 div

<div ng-class="{'test': !$first}"></div>

查看工作示例,这将帮助您完成代码中的其余操作。当您单击某个元素时,它只会更改该元素的类。

var myApp = angular.module('myApp',[]);
myApp.controller('MainCtrl', function($scope) {
  $scope.items = [
    { name: 'Item 1' },
    { name: 'Item 2' },
    { name: 'Item 3' },
    { name: 'Item 4' },
    { name: 'Item 5' }
    ];
    $scope.selected = 0;
    $scope.select= function(index) {
       $scope.selected = index; 
    };
});
.blur
{
  color:red;  
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
 <body ng-app="myApp" ng-controller="MainCtrl">
    <ul>
      <li ng-repeat="item in items track by $index">
        <a ng-click="select($index)" ng-class="{blur: $index == selected}">{{item.name}}</a>
      </li>
    </ul>
  </body>

关于angularjs - 模糊除选定项之外的所有列表项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39530514/

相关文章:

angularjs - AngularJS 中的 $location.path() 与 $location.hash()

jquery - 使用 bootstrap3 在桌面上使用垂直导航栏,在移动设备上使用水平导航栏 3

html - 如何在 CSS 中调整子菜单的高度和宽度?

javascript - JS 改变一个 css 属性

html - 如何让div占据父级的整个宽度?

javascript - 使用 Angularjs 将模板/表单添加到页面

javascript - Angular JS 中的多个必填字段

javascript - HTML/CSS 使图像容器与旁边的容器大小相同

javascript - 检查时 Bootstrap 按钮类重复,我该如何解决这个问题?

javascript - Jasny Bootstrap 和 Emberjs