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绑定(不推荐):
- 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同时使用
AngularJS中ng-class使用方法的更多相关文章
- AngularJS中控制器之间通信方法
在同个angular应用的控制器之间进行通信可以有很多种不同的方式,本文主要讲两种: 基于scope继承的方式和基于event传播的方式 基于scope继承的方式 最简单的让控制器之间进行通信的方法是 ...
- AngularJS中页面传参方法
1.基于ui-router的页面跳转传参 (1) 用ui-router定义路由,比如有两个页面,一个页面(producers.html)放置了多个producers,点击其中一个目标,页面跳转到对应的 ...
- AngularJS学习--- AngularJS中XHR(AJAX)和依赖注入(DI) step5
前言:本文接前一篇文章,主要介绍什么是XHR,AJAX,DI,angularjs中如何使用XHR和DI. 1.切换工具目录 git checkout -f step- #切换分支 npm start ...
- angularJS中$apply()方法详解
这篇文章主要介绍了angularJS中$apply()方法详解,需要的朋友可以参考下 对于一个在前端属于纯新手的我来说,Javascript都还是一知半解,要想直接上手angular JS,遇到的 ...
- AngularJS进阶(三十三)书海拾贝之简介AngularJS中使用factory和service的方法
简介AngularJS中使用factory和service的方法 AngularJS支持使用服务的体系结构"关注点分离"的概念.服务是JavaScript函数,并负责只做一个特定的 ...
- AngularJS中监视Scope变量以及外部调用Scope方法
在AngularJS中,有时候需要监视Scope中的某个变量,因为变量的改变会影响一些界面元素的显示.有时,也希望通过jQuery调用Scope的某个方法. 比如以下场景: <div> & ...
- 深入了解angularjs中的$digest与$apply方法,从区别聊到使用优化
壹 ❀ 引 如果有人问,在angularjs中修改模型数据为何视图会同步更新呢,我想大多数人一定会回答脏检查(Dirty Checking)相关概念.没错,在angularjs中作用域(scope) ...
- AngularJS学习--- AngularJS中的模板template和迭代器过滤filter step2 step3
1.AngularJS 模板---step2: mvc(Model-View-Controller)模式在后端用的比较多,在前端也是一样的常用; 在AngularJS中,一个视图是模型通过HTML模板 ...
- 转: 理解AngularJS中的依赖注入
理解AngularJS中的依赖注入 AngularJS中的依赖注入非常的有用,它同时也是我们能够轻松对组件进行测试的关键所在.在本文中我们将会解释AngularJS依赖注入系统是如何运行的. Prov ...
- (九)通过几段代码,理清angularJS中的$injector、$rootScope和$scope的概念和关联关系
$injector.$rootScope和$scope是angularJS框架中比較重要的东西,理清它们之间的关系,对我们兴许学习和理解angularJS框架都很实用. 1.$injector事实上是 ...
随机推荐
- NEERC 15 (10/12)
NEERC=Not Easy European Regional Contest 据说NEERC天天被搬,赶紧做了好了.在Claris和Google的帮助下做了10题,感谢cls. http://co ...
- 【BZOJ2281】【Sdoi2011】黑白棋 解题报告
[BZOJ2281][Sdoi2011]黑白棋 Description 小A和小B又想到了一个新的游戏. 这个游戏是在一个\(1\)*\(n\)的棋盘上进行的,棋盘上有\(k\)个棋子,一半是 ...
- Android Launcher分析和修改
Android Launcher分析和修改 http://www.cnblogs.com/mythou/category/499819.html Android Launcher分析和修改1——Lau ...
- js中apply(thisArg, [argsArray])的参数与ArrayLike的关系
你是否写过或见到过这样的代码 xx.apply(this,slice.call(arguments)) //slice.call转为数组是否多余 mdn地址 msdn地址 一.微软和mdn对参数的介绍 ...
- CH3101 阶乘分解
题目链接 分解\(n!\)的质因数,输出相应的\(p_i\)和\(c_i\). 其中\(1\leq n\leq 10^6\). 考虑每一个质因子 \(p\) 在 \(n!\) 中出现的次数.显然, ...
- GO_02:GO语言开篇
Go的发展史 Go 是一个开源的编程语言,它能让构造简单.可靠且高效的软件变得容易. Go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发,后 ...
- Mongodb 笔记06 副本集的组成、从应用程序连接副本集、管理
副本集的组成 1. 同步:MongoDB的复制功能是使用操作日志oplog实现的,操作日志包含了主节点的每一次写操作.oplog是主节点的local数据库中的一个固定集合.备份节点通过查询整个集合就可 ...
- 数据结构编程实验——chapter8-采用树结构的非线性表编程
关于树结构的非线性表编程在数据结构中可以说占据了半壁江山,其中涉及的知识点繁杂,但也是数据结构体现运算优化的核心所在,下面我们将较为初步且系统得讨论数据结构中一系列有关树的表示. 首先我们再次明确树的 ...
- RabbitMQ问题解决:TCP connection succeeded but Erlang distribution failed
说明 本来是要先把Hystrix 仪表盘更完的,但是出现了Turbine.Dashboard.RabbitMQ整合实现监控. 所以先在学RabbitMq的基本操作,在安装过程中出现了 E:\Rabbi ...
- iOS二维码扫描的实现(Swift)
随着二维码的普遍使用,二维码扫描也成为了很多app的一个基本功能,本篇主要来介绍一下如何实现一个简单的二维码扫描功能.本文使用了XCode自带的AVFoundation 库,利用Swfit语言实现. ...