zoukankan      html  css  js  c++  java
  • 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同时使用

  • 相关阅读:
    cocos2d-x系列笔记技巧篇(2)---关于CREATE_FUNC宏的用法
    Cocos2d-x开源、跨平台的游戏引擎
    Asp.Net Core 文件上传处理
    Asp.Net Core获取当前上下文对象
    Asp.Net Core 视图整理(一)
    SVG渲染顺序及z轴显示问题(zIndex)
    JavaScript Screen对象
    Javascript 对象(object)合并
    SVG.Js事件示例,简单绑定拖动操作
    SVG 文字居中整理
  • 原文地址:https://www.cnblogs.com/soul-wonder/p/9172525.html
Copyright © 2011-2022 走看看