javascript-在AngularJS中使用循环和ng-class创建包装器DIV
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript-在AngularJS中使用循环和ng-class创建包装器DIV,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1778字,纯文字阅读大概需要3分钟。
内容图文
![javascript-在AngularJS中使用循环和ng-class创建包装器DIV](/upload/InfoBanner/zyjiaocheng/693/b793be005284428b9d73fc1906b79174.jpg)
我目前正在使用AngularJS创建动态时间表.我的时间轴中的数据是从JSON文件中获取的,我已经能够成功配置它.这是我目前在PLNKR上拥有的内容:http://plnkr.co/edit/avRkVJNJMs4Ig5mDrwJ8
这是我当前的导航:
<nav id="sticky-navigation">
<ul>
<li><a href="#decade-1960s">1960</a></li>
<li><a href="#decade-1970s">1970</a></li>
<li><a href="#decade-1980s">1980</a></li>
<li><a href="#decade-1990s">1990</a></li>
<li><a href="#decade-2000s">2000</a></li>
<li class="active"><a href="#decade-2010s">2010-Now</a></li>
</ul>
</nav>
我基本上想为“ decade-1960s”,“ decade-1970s”等的唯一ID创建包装div,以便用户可以使用导航有效地导航到他们最感兴趣的十年.日期是从JSON文件中解析出来的,所以我想知道还有另外一个日期可以从JSON中提取年份,根据特定的十年来组织事件,然后为每个十年添加一个包装器.
非常感谢!我知道这听起来很复杂!但是我更多是前端开发人员和设计师,而不是后端程序员.
解决方法:
这是一般的想法:
这类似于分页.从所有记录(事件)中获取十年,然后将它们分组为页面(每十年一个).一旦您的中继器依赖于eventsByDecade数组,angularjs将完成所有繁重的工作.
以下是一些准则:
用json文件填充events变量后,创建一个数组,然后根据日期填充它.为此,您将需要在每个事件上检查event.theDate.getFullYear().
然后,根据年份,您可以得到十年,也许使用year.substring(0,2)(仅使用前3位数字).
接下来,将它们按十年分组在一个数组中,然后将每个十年数组分配到一个主eventsByDecade数组中.
最后,从以下位置更改中继器:
ng-repeat="event in events | filter:query | orderBy:orderProp:true"
使用“分页”数组:
ng-repeat="event in eventsByDecade[currentIndex] | filter:query | orderBy:orderProp:true"
在这里,只要单击链接,就会设置currentIndex,例如:
<li><a href="#decade-1960s" ng-click="currentIndex = 1">1960</a></li>
更新:操作json
JSON评估为JavaScript对象.因此,您可以像这样遍历事件:
for(var event in events){
event.theDate; //this object should have properties such as the date
}
内容总结
以上是互联网集市为您收集整理的javascript-在AngularJS中使用循环和ng-class创建包装器DIV全部内容,希望文章能够帮你解决javascript-在AngularJS中使用循环和ng-class创建包装器DIV所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。