详解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 相关文章推荐
js实现的真正的iframe高度自适应(兼容IE,FF,Opera)
Mar 07 Javascript
Extjs EditorGridPanel中ComboBox列的显示问题
Jul 04 Javascript
SyntaxHighlighter语法高亮插件使用说明
Aug 14 Javascript
JS批量操作CSS属性详细解析
Dec 16 Javascript
JavaScript类型系统之Object详解
Jan 07 Javascript
JS中对Cookie的操作详解
Aug 05 Javascript
js模仿微信朋友圈计算时间显示几天/几小时/几分钟/几秒之前
Apr 27 Javascript
easyUI下拉列表点击事件使用方法
May 18 Javascript
jQuery实现的点击按钮改变样式功能示例
Jul 21 jQuery
JavaScript中如何对多维数组(矩阵)去重的实现
Dec 04 Javascript
详解node.js 事件循环
Jul 22 Javascript
vue-cropper组件实现图片切割上传
May 27 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下几个常用的去空、分组、调试数组函数
2009/02/22 PHP
Thinkphp结合ajaxFileUpload实现异步图片传输示例
2017/03/13 PHP
jquery sortable的拖动方法示例详解
2014/01/16 Javascript
21个JavaScript事件(Events)属性汇总
2014/12/02 Javascript
实现placeholder效果的方案汇总
2015/06/11 Javascript
JS组件系列之Bootstrap Icon图标选择组件
2016/01/28 Javascript
jQuery EasyUi 验证功能实例解析
2017/01/06 Javascript
js实现城市级联菜单的2种方法
2017/06/23 Javascript
详解基于vue的移动web app页面缓存解决方案
2017/08/03 Javascript
Node.js微信 access_token ( jsapi_ticket ) 存取与刷新的示例
2017/09/30 Javascript
详解javascript appendChild()的完整功能
2018/08/18 Javascript
vue地址栏直接输入路由无效问题的解决
2018/11/15 Javascript
Vue实现远程获取路由与页面刷新导致404错误的解决
2019/01/31 Javascript
ionic2.0双击返回键退出应用
2019/09/17 Javascript
使用layer弹窗,制作编辑User信息页面的方法
2019/09/27 Javascript
Python __setattr__、 __getattr__、 __delattr__、__call__用法示例
2015/03/06 Python
Python实现通过继承覆盖方法示例
2018/07/02 Python
Python实现string字符串连接的方法总结【8种方式】
2018/07/06 Python
python 字符串常用方法汇总详解
2019/09/16 Python
python 比较2张图片的相似度的方法示例
2019/12/18 Python
Python实现随机生成任意数量车牌号
2020/01/21 Python
Django单元测试中Fixtures的使用方法
2020/02/26 Python
深入了解Python enumerate和zip
2020/07/16 Python
基于Html5 canvas实现裁剪图片和马赛克功能及又拍云上传图片 功能
2019/07/09 HTML / CSS
英国最大的电脑零售连锁店集团:PC World
2016/10/10 全球购物
巴西图书和电子产品购物网站:Saraiva
2017/06/07 全球购物
Fresh馥蕾诗英国官网:法国LVMH集团旗下高端天然护肤品牌
2018/11/01 全球购物
澳大利亚家具和家居用品购物网站:Zanui
2018/12/29 全球购物
学生爱国演讲稿
2014/01/14 职场文书
代理协议书
2014/04/22 职场文书
电钳工人个人求职信
2014/05/10 职场文书
阳光体育活动实施方案
2014/05/25 职场文书
安全标语大全
2014/06/10 职场文书
2014年销售内勤工作总结
2014/12/01 职场文书
2015年教师业务工作总结
2015/05/26 职场文书
2016廉洁从业学习心得体会
2016/01/19 职场文书