我有这个简单的结构:
<div class="outer-div">
<div class="inner-div-1">inner div 1</div>
<div class="inner-div-2">inner div 2</div>
<div class="inner-div-3">inner div 3</div>
<div class="inner-div-4">inner div 4</div>
</div>
尝试选择所有内部div而不是第二个。使用angular.element('div', '.outer-div')
将选择每个div。我只需要选择第1,第3和第4。有没有一种简单的方法可以做到这一点,最好使用一个angular.element?
以下是一个示例:https://codepen.io/neptune01/pen/ppBrKY?editors=1111
答案 0 :(得分:1)
你可以考虑下面这样的东西,但它非常不鼓励从角度控制器进行DOM操作。我建议为它创建指令。
var childs = angular.element('.outer-div').children();
colorElementExclude([1], childs);
function colorElementExclude(excludedElement, childrens){
//add exclude class on element to be excluded
excludedElement.forEach(function(el) {
childrens.eq(el).addClass('exclude');
});
childrens.not(".exclude").css({ 'color': 'grey' });
}