angular.js - angular ng-repeat改变某个的背景颜色
问题描述
如图所示,上面的5个块,用ng-repeat循环输出,怎样实现当点击某一块(如块2)时,该块的背景颜色变为红色?其他的块的颜色不变。谢谢指点。
问题解答
回答1:方法太多,ng-click,ng-class,directive实现都可以啊这是直接写的方法,仅供参考html:
<p> <span ng- ng-repeat='s in list' ng-bind='s' ng-click='changeStatus(s)'></span></p>
js
$scope.list = [1,2,3,4,5];$scope.changeStatus = function(index){ $scope.selected = index;}回答2:
添加点击事件。把当前循环的$index和$event传过去。然后自己通过angular jq来就处理就OK啊。
回答3:给你个现成的代码:HTML
<p class=’options’> <span class=’option’ ng- ng-repeat='s in orderStatus' ng-bind='s.l' ng-click='clickStatus(s)'></span></p>
JS
$scope.clickStatus = function(prop) { prop._selected = !prop._selected;};
CSS
.option{display:inline-block;border:1px solid green;padding:.25em;margin:.5em .5em 0 0;}.option.selected{background:green;color:white;}
我正打算写个directive做这个
回答4:http://runjs.cn/detail/yfnwk6ho
相关文章:
1. javascript - 引入 simditor,但是显示标签,这个怎么解决。2. android - 目前有哪些用Vue.js开发移动App的方案?3. docker api 开发的端口怎么获取?4. javascript - 仿着echarts官网的地图做了个例子,但是只显示出来了地点,没有画出飞机动态效果??急5. java - android studio的安装路径问题6. java - idea 新建项目提示 already exists in VFS7. python - scrapy获取网页指定内容,后翻到下一页继续,固定循环次数。。问题8. calss调用了 也设置了颜色,可是网站不显示。请问大佬是什么情况啊9. cas项目起个名字10. background属性顺序?