轉自:https://blog.csdn.net/jumtre/article/details/50802136
其他博文ng-class使用方法:https://blog.csdn.net/sinat_36146776/article/details/78340922
有三種方法:
1、通過$scope綁定(不推薦)
2、通過對象數組綁定
3、通過key/value鍵值對綁定
實現方法:
1、通過$scope綁定(不推薦):
- function ctrl($scope) {
- $scope.className = "selected";
- }
function ctrl($scope) { $scope.className = "selected"; }
- <div class="{{className}}"></div>
<div class="{{className}}"></div>
2、通過對象數組綁定:
- function ctrl($scope) {
- $scope.isSelected = true;
- }
function ctrl($scope) { $scope.isSelected = true; }
- <div ng-class="{true:'selected',false:'unselected'}[isSelected]"></div>
<div ng-class="{true:'selected',false:'unselected'}[isSelected]"></div>
當isSelected為true時,增加selected樣式;當isSelected為false時,增加unselected樣式。
3、通過key/value鍵值對綁定:
- function ctrl($scope) {
- $scope.isA = true;
- $scope.isB = false;
- $scope.isC = false;
- }
function ctrl($scope) { $scope.isA = true; $scope.isB = false; $scope.isC = false; }
- <div ng-class="{'A':isA,'B':isB,'C':isC}"></div>
<div ng-class="{'A':isA,'B':isB,'C':isC}"></div>
當isA為true時,增加A樣式;當isB為true時,增加B樣式;當isC為true時,增加C樣式。
- <ion-list>
- <ion-item ng-repeat="project in projects" ng-click="selectProject(project, $index)" ng-class="{active: activeProject == project}">
- {{project.title}}
- </ion-item>
- </ion-list>
<ion-list> <ion-item ng-repeat="project in projects" ng-click="selectProject(project, $index)" ng-class="{active: activeProject == project}"> {{project.title}} </ion-item> </ion-list>根據projects循環創建ion-item,當activeProject為當前循環到的project時,增加active樣式。
幾點說明:
1、不推薦第一種方法,因為controller $scope應該只有數據和行為
2、ng-class是增加相關樣式,可以和class同時使用