2015-09-11 57 views
0

我有一个如下所示的ul li结构,并且需要在每个第二个元素之后添加空白li,以及在角度js中如何使用ng-repeat。在每个第n个元素之后使用角度js添加一些元素

<ul> 
<li>content</li> 
<li>content</li> 
<li class="filler"></li> 
<li>content</li> 
<li>content</li> 
</ul> 

    <ul> 
<li ng-repeat="item in items">item.content</li> 
</ul> 
+0

'items.push(//推送你想要的......)'。 –

+0

这个'filler'元素是否包含任何东西?或者它只是一种间隔?也许不是修改'DOM'树,你应该尝试使用样式?即为“li:n-child(2n)”定义样式。 –

+0

用于一种间隔物的填充物。所以需要使用类填充进行渲染。 – Jaison

回答

1

一种方法是使用ng-repeat-startng-repeat-end

<li ng-repeat-start="item in items">{{item.content}}</li> 
<li ng-repeat-end ng-if="$index % 2 == 1">Filler</li> 
<!-- OR --> 
<li ng-repeat-end ng-if="$odd">Filler</li> 

如果填料是纯粹的,你可以使用CSS,而不使用ng-repeat-end

li:nth-child(odd):after{ 
    display:block; 
    content: ' '; 
    /** other filler rules **/ 
} 

DEMO来管理它的风格元素

+0

'%2'的功能是什么?在'ng-if =“$ index%2 == 1”'中。 –

+0

或'ng-if =“$ odd”' – YOU

+1

@YOU ohhhh,我甚至都不知道有'$ odd'。我知道$最后和$第一,但不是那个...完美thnx – charlietfl

相关问题