我想设置一个索引值,如果div有类'活动'
<div class="tab-pane active" id="tab1">
<div class="tab-pane" id="tab2">
这样的事情:
<div class="tab-pane active" id="tab1" ng-class="(this).hasClass('active')?$index = 1: ''">
不确定如何处理此问题。
答案 0 :(得分:2)
据我所知,您希望set scope属性指示活动选项卡的索引。在这种情况下,如果选择了标签#tab1
,则$scope.$index
应为1
等。
由于读取类属性意味着使用DOM进行manupilations,因此该功能的最佳位置是自定义指令。指令可以绑定到类名(restrict: 'C'
)非常方便。然后天真的实现可能是:
app.directive('active', function() {
return {
restrict: 'C',
link: function(scope, element) {
scope.tabIndex = element[0].id.replace('tab', '');
}
};
});
请注意,我设置了tabIndex
属性,以免将其与ngRepeat
$index
变量混淆。
以下是此方法的一个小演示: http://plnkr.co/edit/y6Mj4kFCq2fS5VdCjSsb?p=preview