详解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的函数作用域
Nov 12 Javascript
fastclick插件导致日期(input[type=&quot;date&quot;])控件无法被触发该如何解决
Nov 09 Javascript
AngularJS基础 ng-repeat 指令简单示例
Aug 03 Javascript
jQuery图片轮播实现并封装(一)
Dec 03 Javascript
JS判断是否手机或pad访问实现方法
Dec 09 Javascript
微信小程序实现图片自适应(支持多图)
Jan 25 Javascript
js微信应用场景之微信音乐相册案例分享
Aug 11 Javascript
简单谈谈vue的过渡动画(推荐)
Oct 11 Javascript
vue导出html、word和pdf的实现代码
Jul 31 Javascript
JS实现容器模块左右拖动效果
Jan 14 Javascript
Vuex中的Mutations的具体使用方法
Jun 01 Javascript
vue使用exif获取图片经纬度的示例代码
Dec 11 Vue.js
各种选择框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中输出转义JavaScript代码的实现代码
2011/04/22 PHP
基于PHP一些十分严重的缺陷详解
2013/06/03 PHP
JavaScript 创建对象和构造类实现代码
2009/07/30 Javascript
推荐11款jQuery开发的复选框和单选框美化插件
2011/08/02 Javascript
Ubuntu 11.10 安装Node.js的方法
2011/11/30 Javascript
终于解决了IE8不支持数组的indexOf方法
2013/04/03 Javascript
原生JS和JQuery动态添加、删除表格行的方法
2015/05/28 Javascript
Bootstrap实现下拉菜单效果
2016/04/29 Javascript
js 弹出对话框(遮罩)透明,可拖动的简单实例
2016/07/11 Javascript
jquery实现全选、不选、反选的两种方法
2016/09/06 Javascript
H5移动端适配 Flexible方案
2016/10/24 Javascript
Bootstrap模态框案例解析
2017/03/05 Javascript
React Native 自定义下拉刷新上拉加载的列表的示例
2018/03/01 Javascript
一步一步的了解webpack4的splitChunk插件(小结)
2018/09/17 Javascript
JS获取今天是本月第几周、本月共几周、本月有多少天、是今年的第几周、是今年的第几天的示例代码
2018/12/05 Javascript
详解Ant Design of React的安装和使用方法
2018/12/27 Javascript
微信小程序:报错(in promise) MiniProgramError
2020/10/30 Javascript
Python tempfile模块学习笔记(临时文件)
2014/05/25 Python
python使用xlrd和xlwt读写Excel文件的实例代码
2018/09/05 Python
Python3 使用cookiejar管理cookie的方法
2018/12/28 Python
Python变量访问权限控制详解
2019/06/29 Python
python使用opencv对图像mask处理的方法
2019/07/05 Python
python爬虫 爬取超清壁纸代码实例
2019/08/16 Python
Python对象的属性访问过程详解
2020/03/05 Python
浅谈Python的方法解析顺序(MRO)
2020/03/05 Python
Centos7下源码安装Python3 及shell 脚本自动安装Python3的教程
2020/03/07 Python
Python 防止死锁的方法
2020/07/29 Python
阿联酋航空假期:Emirates Holidays
2018/03/20 全球购物
意大利火车票和铁路通行证专家:ItaliaRail
2019/01/22 全球购物
摄影实习自我鉴定
2013/09/20 职场文书
国际贸易系求职信
2014/08/09 职场文书
活动总结范文
2014/08/30 职场文书
初中生思想道德自我评价
2015/03/09 职场文书
2016优秀毕业生个人事迹材料
2016/02/29 职场文书
基于Nginx实现限制某IP短时间访问次数
2021/03/31 Servers
Hive常用日期格式转换语法
2022/06/25 数据库