2017-09-05 58 views
0

我會有從後臺生成的列表:如何顯示列表中的兩個項目並摺疊其他項目?

<ul> 
{% for element in elements %} 
    <li>{{element }}</li> 
{% endfor %} 
</ul> 

我想只顯示兩個第一項和摺疊等(可能帶有鏈接「查看所有」點擊時顯示我的項目的其餘部分)

這是可能的嗎?

+0

這裏一個很好的和易於使用的readmore插件:http://jedfoster.com/Readmore.js/ 希望這有助於:) –

+0

不要使用額外的插件此,只需製作一個計數器即可計算循環步驟,併爲1和2顯示它們,否則摺疊它們 –

+1

是的,有可能 - 您到目前爲止嘗試過了什麼?你可以用js和css類來做到這一點,以隱藏除前兩個之外的所有內容。 –

回答

1

$(function(){ 
 
var limit = 1; 
 

 
    $(".list-group-item").each(function(i) { 
 
     if (i <= limit) { 
 
      $(this).addClass('show'); 
 
     }else{ 
 
     \t $(this).addClass('add-more'); 
 
     } 
 
     $(this).not('.show').hide(); 
 
     }); 
 

 
}) 
 

 
    $('.see-emails').click(function() { 
 
    \t $('.add-more').show(); 
 
    $('a').hide(); 
 
    });
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet"/> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script> 
 

 

 
<div id="collapseListGroup1"> 
 
    <ul class="list-group"> 
 

 
    <li class="list-group-item"> email1 </li> 
 
    <li class="list-group-item"> email2 </li> 
 
    <li class="list-group-item"> email3 </li> 
 
    <li class="list-group-item"> email4 </li> 
 
    <li class="list-group-item"> email 5</li> 
 
    </ul> 
 
</div> 
 
<a class="collapsed see-emails" > 
 
      See Emails 
 
     </a>

+0

謝謝你,但我想顯示鏈接「請看電子郵件」與兩個第一封電子郵件,當我點擊在'看到電子郵件'它顯示我的郵件的其餘部分(也許更改鏈接的標籤'看到更多'更重要 –

+0

好ive編輯上面的片段。請檢查一次,還有更多的事情要做 –

+0

嗨,這是然而,.show和.add-more類的css是什麼? – Krys

相關問題