AngularJS中ng-class使用方法


轉自: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綁定(不推薦):

 

[javascript] view plain copy
print ?
  1. function ctrl($scope) {   
  2.     $scope.className = "selected";  
  3. }  
function ctrl($scope) { 
    $scope.className = "selected";
}

  1. <div class="{{className}}"></div>  
<div class="{{className}}"></div>


 

2、通過對象數組綁定:

 

[javascript] view plain copy
print ?
  1. function ctrl($scope) {   
  2.     $scope.isSelected = true;  
  3. }  
function ctrl($scope) { 
    $scope.isSelected = true;
}

  1. <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鍵值對綁定:

 

[javascript] view plain copy
print ?
  1. function ctrl($scope) {   
  2.     $scope.isA = true;  
  3.     $scope.isB = false;  
  4.     $scope.isC = false;  
  5. }  
function ctrl($scope) { 
    $scope.isA = true;
    $scope.isB = false;
    $scope.isC = false;
}

  1. <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樣式。

 

 

  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>  
<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同時使用


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM