这里有一点情况。 我刚刚学习Angular而且我遇到了以下问题。
我有一个重复自己的列表(ng-repeat),当它被渲染时,你可以点击它,然后我给你点击的列表项添加一个类,jQuery风格:
$('#'+id).addClass("myClass");
id存储在范围变量中。
但是当我更改list-item的范围时,会加载新项目,当我将它们更改回状态时,我开始尝试将类添加到相同的id,但是doens& #39; t work。
我错过了什么吗?
提前致谢
答案 0 :(得分:1)
这里更好的方法是在点击时更改您的数据,然后根据数据有条件地附加一个类:
<div ng-repeat="item in items" ng-class="{myClass:item.changed}">
{{item.name}}
<button ng-click="item.changed = !item.changed">Change me!</button>
</div>
这里有效:http://jsfiddle.net/wilsonjonash/NTpLS/
正如我在评论中提到的,当以角度编程时,请根据您的模型首先考虑。使用DOM操作在jQuery-land中实现的大多数事情都可以通过与模型相关的标记(指令)以角度实现。
祝你好运!
答案 1 :(得分:0)
您可以使用ng-class而不是addClass:)