AngularJS动态设置CSS
使用AngularJS动态设置CSS大致有2种思路:
1、通过动态设置class名称
比如先定义2个样式:
.show-true{
display:block;
}
.show-flase{
display:none;
}
在某个元素中:
<div class="show-{{temp}}".....
temp为$scope的一个变量,通过设置$scope.temp = true 或 $scope.temp = false来决定temp变量的具体值。
比如:
<!doctype html><html ng-app="myApp"><head><meta charset="UTF-8"><title>Untitled Document</title><style>.menu-disabled-true{color: gray;}.menu-disabled-false{color: red;}</style><script src="angular.min.js"></script><script>var myApp = angular.module("myApp",[]);myApp.controller("MyController", function($scope){$scope.isDisabled = false;$scope.changeState = function(){$scope.isDisabled = true;};});</script></head><body ng-controller="MyController"><ul><li class="menu-disabled-{{isDisabled}}" ng-click="changeState()">hello</li></ul></body></html>
2、使用ng-class
ng-class显示一个对象,比如ng-class="{selected: true}"表示class="selected"。
以下ng-class的字段直接接收bool值。
<!doctype html><html ng-app="myApp"><head><meta charset="UTF-8"><title>Untitled Document</title><style>.error{background-color: red;}.warning{background-color: yellow;}</style><script src="angular.min.js"></script><script>var myApp = angular.module("myApp",[]);myApp.controller("MyController",function($scope){$scope.isError = false;$scope.isWarning = false;$scope.showError = function(){$scope.messageText = "error";$scope.isError = true;$scope.isWarning = false;};$scope.showWarning = function(){$scope.messageText = "warning";$scope.isError = false;$scope.isWarning = true;};});</script></head><body ng-controller="MyController"><div ng-class="{error:isError, warning:isWarning}">{{messageText}}</div><button ng-click="showError()">显示error</button><button ng-click="showWarning()">显示warning</button></body></html>
以下,ng-class的字段接收一个返回bool类型的表达式。
<!doctype html><html ng-app="myApp"><head><meta charset="UTF-8"><title>Untitled Document</title><style>.selected{background-color: lightgreen;}</style><script src="angular.min.js"></script><script>var myApp = angular.module("myApp",[]);myApp.controller("MyController",function($scope){$scope.person =[{name: 'darren', age: '20'},{name: 'jack', age: '23'}];$scope.selectPerson = function(rowIndex){$scope.selectedRow = rowIndex;};});</script></head><body><table ng-controller="MyController"><tr ng-repeat="p in person" ng-click="selectPerson($index)" ng-class="{selected: $index==selectedRow}"><td>{{p.name}}</td><td>{{p.age}}</td></tr></table></body></html>
参考资料:<<用AngularJS开发下一代Web应用>>
AngularJS动态设置CSS的更多相关文章
- ng-class 动态设置css
可使用ng-class 动态设置class ,设置disable后,发现ng-click 居然还可以使用,不知什么原因. <li ng-class="{disabled:!first} ...
- JS动态设置css的几种方式
1. 直接设置style的属性 某些情况用这个设置 !important值无效 如果属性有'-'号,就写成驼峰的形式(如textAlign) 如果想保留 - 号,就中括号的形式 element. ...
- [原创]webpack动态设置css路径
在程序入口的最上方添加 __webpack_public_path__ = path; //your path //your app start here
- JS设置CSS样式的几种方式
用JS来动态设置CSS样式,常见的有以下几种 1. 直接设置style的属性 某些情况用这个设置 !important值无效 如果属性有'-'号,就写成驼峰的形式(如textAlign) 如果想保 ...
- JS设置CSS样式的几种方式【转】
用JS来动态设置CSS样式,常见的有以下几种 1. 直接设置style的属性 某些情况用这个设置 !important值无效 如果属性有'-'号,就写成驼峰的形式(如textAlign) 如果想保 ...
- jQuery动态设置样式(style、css)
一.jQuery设置css样式 <div style="background-color:#ffffff;padding-left:10px;">测试jQuery动态获 ...
- 使用 jQuery 基本选择器获取页面元素,然后利用 jQuery 对象的 css() 方法动态设置 <span> 和 <a> 标签的样式
查看本章节 查看作业目录 需求说明: 使用 jQuery 基本选择器获取页面元素,然后利用 jQuery 对象的 css() 方法动态设置 <span> 和 <a> 标签的样式 ...
- js动态设置窗体位置
1设置登录框的js,动态设置高度等 <script> $(document).ready(function () { $() / + "px"); $("in ...
- angular.element方法汇总以及AngularJS 动态添加元素和删除元素
addClass()-为每个匹配的元素添加指定的样式类名after()-在匹配元素集合中的每个元素后面插入参数所指定的内容,作为其兄弟节点append()-在每个匹配元素里面的末尾处插入参数内容att ...
随机推荐
- 【CTF REVERSE】WHCTF2017-CRACKME
1.前言 假装大学生水一下CTF题目,常规思路.程序没有加壳,是VC写的MFC程序. 2.破题思路 1.MessageBox 下断点 2.找到提示错误字符串的函数B 3.跟踪函数 4.跟踪算法 3.实 ...
- eclipse:无法删除不存在的工程
把工程改名后,结果在eclipse里面产生了两个工程,一个原工程,一个是新工程,删除原工程报错, 说工程不存在.这个时候拖动原工程到别的workset中,发现原工程消失了,并找到workspace目录 ...
- springboot:mybatis多数据源配置
1.application.properties #CMS数据源(主库) spring.datasource.cms.driver-class-name=com.mysql.jdbc.Driver s ...
- python与C交互中传入与读取内存空间
使用用python调用c代码中,从外部传入一个固定大小的内存空间,这段内存需要是可写的 首先看下c中的函数 typedef struct ModelData { unsigned int model_ ...
- PHP中curl模拟post上传及接收文件
public function Action_Upload(){ $this->path_config(); exit(); $furl="@d:\develop\JMFramewor ...
- shell学习(三)
libvirt用于管理KVM本身的工具 virt-install用于安装虚拟机需要的安装包,安装虚拟机 virt-mananger:管理创建删除虚拟机的工具 ---恢复内容开始--- 1 gre ...
- Orchard学习 02、orchard 路由
Orchard对mvc路由重新做了包装,重写了asp.net的路由模块 一.路由模块类图 1.路由 Descriptor RouteDescriptor是对常规mvc路由的包装类,它的Route属性就 ...
- Java基础常见英语词汇(共70个)
——————————ASP.Net+Android+IOS开发..Net培训.期待与您交流!—————————— Java英文单词 OO: object—oriented ,面向对象 OOP:obje ...
- php 会话控制(禁用cookie后session为什么会失效?)
首先说明一点:session不一定必须依赖cookie,只是php默认客户端sessionid基于cookie方式保存. 到此,我想你也应该了解了php默认的session客户端保存方式是基于cook ...
- html (第四本书第1~3章参考)
前三章都不会的话 呵呵……