84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
如圖所示,上面的5個塊,用ng-repeat循環輸出,怎樣實現當點擊某一塊(如塊2)時,該塊的背景顏色變為紅色?其他的塊的顏色不變。 謝謝指點。
方法太多,ng-click,ng-class,directive實作都可以啊這是直接寫的方法,僅供參考html:
<p> <span ng-class="{'selected':selected==s}" 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; }
新增點擊事件。把目前循環的$index和$event傳過去。然後自己透過angular jq來就處理就OK啊。
給你一個現成的程式碼:HTML
<p class='options'> <span class='option' ng-class="{'selected':s._selected}" 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做這個
http://runjs.cn/detail/yfnwk6ho
方法太多,ng-click,ng-class,directive實作都可以啊
這是直接寫的方法,僅供參考
html:
js
新增點擊事件。把目前循環的$index和$event傳過去。然後自己透過angular jq來就處理就OK啊。
給你一個現成的程式碼:
HTML
JS
CSS
我正打算寫個directive做這個
http://runjs.cn/detail/yfnwk6ho