四个li,点击第一个li颜色改变,点击第二个li时第一个li还原,第二个li颜色改变,其余li不变...这个怎么做最好
一个很简单的做法,如果li是ng-repeat实现的,那么直接记录selectId就可以了。
类似这样:
<ul> <li ng-class="{'active': selectedIndex === $index}" ng-repeat="li in ul" ng-click="select($index);">AAA</li> </ul> $scope.select = function(index){ $scope.selectedIndex = index; }
非常感谢,以解决
如果li里面有其他标签,比如:
<li><i class='a1'><span class='b1'>test1</span></i></li>
<li><i class='a2'><span class='b2'>test2</span></i></li>
<li><i class='a3'><span class='b3'>test3</span></i></li>
这样,如果把<i><span>test1</span></i>写进$scope.ul里面遍历出来的是字符串浏览器无法解析啊会直接显示出标签,这样需要怎么做? 我是刚开始学angular的小白,说的可能有点乱,不知道你能不能晓得我在说什么
@热心群众: 有一个指令叫ng-bind-html,<li ng-bind-html="" /> 使用这种方式就可以了。注意一个服务$sce