详解AngularJS ng-class样式切换


Posted in Javascript onJune 27, 2017

整理文档,搜刮出一个详解AngularJS ng-class样式切换,稍微整理精简一下做下分享。

1、HTML

<ion-view> 
  <ion-content> 
    <div class="button-bar"> 
      <div ng-class="{true: 'bgstyle-check', false: 'bgstyle'}[isFirst]" ng-click="isFirst = !isFirst">First</div> 
      <div ng-class="{true: 'bgstyle-check', false: 'bgstyle'}[isSecond]" ng-click="isSecond = !isSecond">Second</div> 
      <div ng-class="{true: 'bgstyle-check', false: 'bgstyle'}[isThird]" ng-click="isThird = !isThird">Third</div> 
    </div> 
    <br><br> 
    <div class="button-bar"> 
      <div ng-class="{true: 'bgstyle-check', false: 'bgstyle'}[hasAll]" ng-click="toggleAll()">All</div> 
      <div ng-class="{true: 'bgstyle-check', false: 'bgstyle'}[hasFirst]" ng-click="toggleFirst()">First</div> 
      <div ng-class="{true: 'bgstyle-check', false: 'bgstyle'}[hasSecond]" ng-click="toggleSecond()">Second</div> 
      <div ng-class="{true: 'bgstyle-check', false: 'bgstyle'}[hasThird]" ng-click="toggleThird()">Third</div> 
    </div> 
  </ion-content> 
</ion-view> 
<style> 
  .bgstyle {background-color: #8f8f8f;width: 100%;height: 20px;margin: 2px 0 2px 0;text-align: center;} 
  .bgstyle-check {background-color: #ff3b30;width: 100%;height: 20px;margin: 2px 0 2px 0;text-align: center;} 
</style>

2、controller

appControllers.controller('TestlCtrl', function ($scope, $state) { 
  $scope.isFirst = false; 
  $scope.isSecond = false; 
  $scope.isThird = false; 
 
 
  $scope.hasAll = false; 
  $scope.hasFirst = false; 
  $scope.hasSecond = false; 
  $scope.hasThird = false; 
 
  $scope.toggleAll = function () { 
    $scope.hasAll = !$scope.hasAll; 
    console.log($scope.hasAll); 
    var dynamicValue = $scope.hasAll; 
    $scope.hasFirst = dynamicValue; 
    $scope.hasSecond = dynamicValue; 
    $scope.hasThird = dynamicValue; 
  } 
 
  $scope.toggleFirst = function () { 
    $scope.hasFirst = !$scope.hasFirst; 
    checkAll(); 
  } 
 
  $scope.toggleSecond = function () { 
    $scope.hasSecond = !$scope.hasSecond; 
    checkAll(); 
  } 
 
  $scope.toggleThird = function () { 
    $scope.hasThird = !$scope.hasThird; 
    checkAll(); 
  } 
 
  function checkAll() { 
    if ($scope.hasFirst == true && $scope.hasSecond == true && $scope.hasThird == true) { 
      console.log("123ok"); 
      $scope.hasAll = true; 
    } else { 
      console.log("123no"); 
      $scope.hasAll = false; 
    } 
 
  } 
})

3、效果图

详解AngularJS ng-class样式切换

4、循环列表,判断索引添加样式

<div class="category-tab "> 
  <ul> 
    <li ng-repeat="item in rootList" ng-class="{true: 'cur', false: ''}[$index+1===1]"> 
      <a href="">{{item.CategoryName}}</a> 
    </li> 
    <li><a href="">热门推荐</a></li> 
    <li><a href="">热门推荐</a> </li> 
  </ul> 
</div>

*、

<ion-item class="item-divider"> 
  <i ng-class="{true: 'icon ion-tips mr10', false: 'iconfont icon-shangdian text-orange mr10'}[item.VendorId==0]"> 
    <element ng-show="item.VendorId==0">合作</element></i>{{item.VendorName}} 
</ion-item>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript中出现乱码的处理心得
Dec 24 Javascript
js封装的textarea操作方法集合(兼容很好)
Nov 16 Javascript
让jQuery Mobile不显示讨厌loading界面的方法
Feb 19 Javascript
jquery text()方法取标签中的文本
Jul 25 Javascript
Jquery Ajax xmlhttp请求成功问题
Feb 04 Javascript
修复jQuery tablesorter无法正确排序的bug(加千分位数字后)
Mar 30 Javascript
JS用斜率判断鼠标进入DIV四个方向的方法
Nov 07 Javascript
基于jQuery实现顶部导航栏功能
Dec 27 Javascript
js实现把图片的绝对路径转为base64字符串、blob对象再上传
Dec 29 Javascript
jQuery实现文档树效果
Feb 20 Javascript
详解使用create-react-app添加css modules、sasss和antd
Jul 31 Javascript
解决layui数据表格table的横向滚动条显示问题
Sep 04 Javascript
各种选择框jQuery的选中方法(实例讲解)
Jun 27 #jQuery
JavaScript事件方法(实例讲解)
Jun 27 #Javascript
简单谈谈原生js的math对象
Jun 27 #Javascript
Vue.js实现一个todo-list的上移下移删除功能
Jun 26 #Javascript
AngularJS 最常用的八种功能(基础知识)
Jun 26 #Javascript
基于jQuery封装的分页组件
Jun 26 #jQuery
深入理解Angular中的依赖注入
Jun 26 #Javascript
You might like
php中的ini配置原理详解
2014/10/14 PHP
php 伪造ip以及url来路信息方法汇总
2014/11/25 PHP
PHP使用缓存即时输出内容(output buffering)的方法
2015/08/03 PHP
Zend Framework生成验证码并实现验证码验证功能(附demo源码下载)
2016/03/22 PHP
可输入的下拉框
2006/06/19 Javascript
JS.getTextContent(element,preformatted)使用介绍
2013/09/21 Javascript
js实现iGoogleDivDrag模块拖动层拖动特效的方法
2015/03/04 Javascript
javascript实现随时变化着的背景颜色
2015/04/02 Javascript
jQuery实现的简洁下拉菜单导航效果代码
2015/08/26 Javascript
javascript每日必学之运算符
2016/02/16 Javascript
使用jQuery制作Web页面遮罩层插件的实例教程
2016/05/26 Javascript
基于javascript实现的快速排序
2016/12/02 Javascript
springMVC + easyui + $.ajaxFileUpload实现文件上传注意事项
2017/04/23 Javascript
BootStrap的两种模态框方式
2017/05/10 Javascript
Angular2安装angular-cli
2017/05/21 Javascript
jQuery实现全选、反选和不选功能
2017/08/16 jQuery
vue resource post请求时遇到的坑
2017/10/19 Javascript
jackson解析json字符串,首字母大写会自动转为小写的方法
2017/12/22 Javascript
用 Vue.js 递归组件实现可折叠的树形菜单(demo)
2017/12/25 Javascript
30分钟快速实现小程序语音识别功能
2018/11/27 Javascript
Node.js 的 GC 机制详解
2019/06/03 Javascript
LayUI动态设置checkbox不显示的解决方法
2019/09/02 Javascript
python处理中文编码和判断编码示例
2014/02/26 Python
Python读写zip压缩文件的方法
2018/08/29 Python
Python设计模式之代理模式实例详解
2019/01/19 Python
Python使用while循环花式打印乘法表
2019/01/28 Python
Python之time模块的时间戳,时间字符串格式化与转换方法(13位时间戳)
2019/08/12 Python
Python对接 xray 和微信实现自动告警
2019/09/17 Python
Python稀疏矩阵及参数保存代码实现
2020/04/18 Python
兰蔻加拿大官方网站:Lancome加拿大
2016/08/05 全球购物
生物有机护肤品:Aurelia Probiotic Skincare
2018/01/31 全球购物
大学生职业规划前言模板
2013/12/27 职场文书
高中生活自我鉴定
2014/01/18 职场文书
小学开学典礼主持词
2014/03/19 职场文书
2016入党积极分子党课学习心得体会
2015/10/09 职场文书
员工试用期工作总结
2019/06/20 职场文书