2015-09-11 88 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

相關問題