AngularJS ng-class

有三種方法:

1、通過$scope綁定(不推薦)

2、通過對象數組綁定

3、通過key/value鍵值對綁定


實現方法:

1、通過$scope綁定(不推薦):

[javascript] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. function ctrl($scope) {   
  2.     $scope.className = "selected";  
  3. }  

[html] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. <div class="{{className}}"></div>  


2、通過對象數組綁定:

[javascript] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. function ctrl($scope) {   
  2.     $scope.isSelected = true;  
  3. }  

[html] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. <div ng-class="{true:'selected',false:'unselected'}[isSelected]"></div>  

當isSelected爲true時,增加selected樣式;當isSelected爲false時,增加unselected樣式。


3、通過key/value鍵值對綁定:

[javascript] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. function ctrl($scope) {   
  2.     $scope.isA = true;  
  3.     $scope.isB = false;  
  4.     $scope.isC = false;  
  5. }  

[html] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. <div ng-class="{'A':isA,'B':isB,'C':isC}"></div>  

當isA爲true時,增加A樣式;當isB爲true時,增加B樣式;當isC爲true時,增加C樣式。


[html] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. <ion-list>  
  2.     <ion-item ng-repeat="project in projects" ng-click="selectProject(project, $index)" ng-class="{active: activeProject == project}">  
  3.         {{project.title}}  
  4.     </ion-item>  
  5. </ion-list>  
根據projects循環創建ion-item,當activeProject爲當前循環到的project時,增加active樣式。


幾點說明:

1、不推薦第一種方法,因爲controller $scope應該只有數據和行爲

2、ng-class是增加相關樣式,可以和class同時使用

發佈了14 篇原創文章 · 獲贊 7 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章