Angularjs使用ng-repeat中$even和$odd属性的注意事项


Posted in Javascript onDecember 31, 2016

前言

JavaScript中数组的索引是从0开始的,因此我们再取奇偶的时候需要用!$even和!$odd来将$even和$odd的布尔值反转

下面给出一个实例:

使用$odd和$even来制作一个红蓝相间的列表

<!DOCTYPE html>
<html lang="zh-CN" ng-app="app">
<head>
 <meta charset="utf-8">
 <title>ng-repeat的用法</title>
 <link rel="stylesheet" href="../bootstrap.min.css">
 <style>
 .odd {
 background-color: blue;
 }
 .even {
 background-color: red;
 }
 </style>
</head>
<body>
 <h4>ng-repeat用来遍历一个集合或为集合中的每个元素生成一个模板实例。集合中的每个元素 都会被赋予自己的模板和作用域。同时每个模板实例的作用域中都会暴露一些特殊的属性。 </h4>
 <ul>
 <li>$index:遍历的进度(0...length-1)。 </li>
 <li>$first:当元素是遍历的第一个时值为true。</li>
 <li>$middle:当元素处于第一个和后元素之间时值为true。 </li>
 <li>$last:当元素是遍历的后一个时值为true。 </li>
 <li>$even:当$index值是偶数时值为true。 </li>
 <li>$odd:当$index值是奇数时值为true。 </li>
 </ul>
 下面的例子展示了如何用$odd和$even来制作一个红蓝相间的列表。记住,JavaScript中数组 的索引从0开始,因此我们用!$even和!$odd来将$even和$odd的布尔值反转。 
 <ul ng-controller="PeopleController">
 <li ng-repeat="person in people" style="color: #fff;" ng-class="{even: !$even, odd: !$odd}">
 {{ person.name }} 住在 {{ person.city }} {{$index}}
 </li>
 </ul>
 <script src="../angular.min.js"></script>
 <script>
 angular.module('app', [])
 .controller('PeopleController', ['$scope', function($scope) {
 $scope.people = [
 {name: '张三', city: '广东'},
 {name: '李四', city: '江西'},
 {name: '王五', city: '东北'}
 ]
 }])
 </script>
</body>
</html>

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

Javascript 相关文章推荐
不错的一个日期输入 动态
Nov 06 Javascript
jQuery实现渐变弹出层和弹出菜单的方法
Feb 20 Javascript
Java File类的常用方法总结
Mar 18 Javascript
jQuery实现图片走马灯效果的原理分析
Jan 16 Javascript
jquery插件jquery.dragscale.js实现拖拽改变元素大小的方法(附demo源码下载)
Feb 25 Javascript
基于Bootstrap+jQuery.validate实现表单验证
May 30 Javascript
JQuery之proxy实现绑定代理方法
Aug 01 Javascript
jquery.flot.js简单绘制折线图用法示例
Mar 13 Javascript
jQuery Easyui Treegrid实现显示checkbox功能
Aug 08 jQuery
jQuery实现的简单图片轮播效果完整示例
Feb 08 jQuery
JS实现二维数组横纵列转置的方法
Apr 17 Javascript
JavaScript命名空间模式实例详解
Jun 20 Javascript
Angularjs通过指令监听ng-repeat渲染完成后执行脚本的方法
Dec 31 #Javascript
angularjs中ng-attr的用法详解
Dec 31 #Javascript
Angularjs中ng-repeat-start与ng-repeat-end的用法实例介绍
Dec 31 #Javascript
Angular JS数据的双向绑定详解及实例
Dec 31 #Javascript
Javascript 实现全屏滚动实例代码
Dec 31 #Javascript
Node.js中如何合并两个复杂对象详解
Dec 31 #Javascript
javascript 闭包详解及简单实例应用
Dec 31 #Javascript
You might like
php 随机数的产生、页面跳转、件读写、文件重命名、switch语句
2009/08/07 PHP
php imagecreatetruecolor 创建高清和透明图片代码小结
2010/05/15 PHP
ThinkPHP中实例Model方法的区别说明
2010/08/21 PHP
php实现网页缓存的工具类分享
2015/07/14 PHP
php基于双向循环队列实现历史记录的前进后退等功能
2015/08/08 PHP
在PHP中输出JS语句以及乱码问题的解决方案
2019/02/13 PHP
Laravel 框架基于自带的用户系统实现登录注册及错误处理功能分析
2020/04/14 PHP
[原创]来自ImageSee官方 JavaScript图片浏览器
2008/01/16 Javascript
select 控制网页内容隐藏于显示的实现代码
2010/05/25 Javascript
utf-8编码引起js输出中文乱码的解决办法
2010/06/23 Javascript
Javascript实现滑块滑动改变值的实现代码
2013/04/12 Javascript
javascript刷新父页面的各种方法汇总
2014/09/03 Javascript
sencha ext js 6 快速入门(必看)
2016/06/01 Javascript
JavaScript动态数量的文件上传控件
2016/11/18 Javascript
详解jQuery uploadify文件上传插件的使用方法
2016/12/16 Javascript
Nodejs读取文件时相对路径的正确写法(使用fs模块)
2017/04/27 NodeJs
vuex 解决报错this.$store.commit is not a function的方法
2018/12/17 Javascript
nodejs实现日志读取、日志查找及日志刷新的方法分析
2019/05/20 NodeJs
[45:56]Ti4正赛第一天 VG vs NEWBEE 3
2014/07/19 DOTA
Python函数参数类型*、**的区别
2015/04/11 Python
基于并发服务器几种实现方法(总结)
2017/12/29 Python
Python如何爬取实时变化的WebSocket数据的方法
2019/03/09 Python
如何为Python终端提供持久性历史记录
2019/09/03 Python
python修改文件内容的3种方法详解
2019/11/15 Python
如何实现在jupyter notebook中播放视频(不停地展示图片)
2020/04/23 Python
浅谈django 重载str 方法
2020/05/19 Python
Python基于network模块制作电影人物关系图
2020/06/19 Python
MoviePy简介及Python视频剪辑自动化
2020/12/18 Python
小学科学教学反思
2014/01/26 职场文书
高二化学教学反思
2014/01/30 职场文书
新员工试用期自我鉴定
2014/04/17 职场文书
上下班时间调整通知
2015/04/23 职场文书
2015年六年级班主任工作总结
2015/10/15 职场文书
大学生先进个人主要事迹材料
2015/11/04 职场文书
不要在HTML中滥用div
2021/05/08 HTML / CSS
win7配置本地ftp服务器的图文教程
2022/08/05 Servers