jQuery в Liferay

#javascript #jquery #html #css #liferay

#javascript #jquery #HTML #css — файл #жизненный путь #css #liferay

Вопрос:

Это мой код в файле jsp. Как я могу показать только 2 «статьи» после рендеринга страницы с возможностью нажать «показать больше»?

Основное отличие от другого вопроса заключается в том, что я хочу показать больше <div> блоков, но не <li> и прочее. И мне не удалось выполнить итерацию по целым блокам. 🙁

 <aui:form name="journalForm" id="journalForm">

    <c:forEach items="${articleModelList}" varStatus="counter"
        var="article">

        <div class="span3">

            <c:if test="${(counter.index % 3) == 0}">
                <div class="article animated fadeInLeft">
            </c:if>
            <c:if test="${(counter.index % 3) == 1}">
                <div class="article animated fadeInDown">
            </c:if>
            <c:if test="${(counter.index % 3) == 2}">
                <div class="article animated fadeInRight">
            </c:if>
            <div class="well">
                <h3>${article.articleName}</h3>
                <div class="article__content">
                    <div class="seo-header">Click to view content</div>
                    <div class="seo-content morecontent">
                        <p class="text-success">${article.articleContent}</p>
                    </div>
                </div>
            </div>
        </div>
</div>
</c:forEach>
</aui:form>
</div>

<div id="loadMore">Load more</div>
<div id="showLess">Show less</div>
  

Я пришел к этому:

 $(document).ready(function() {
size_li = $("#myList .span3").size();
x = 2;
$("#myList .span3 .article").each(function(index, obj) {
    if (index < 2)
        $(obj).attr("display", "block");
});
  

Но это не работает. Я прочитал много документации, но безрезультатно.

Ответ №1:

Это своего рода волшебство, потому что я пытался решить его весь день и добился успеха через 2 минуты после публикации его здесь.

 $(document).ready(function() {
size_li = $("#myList .span3").size();
x = 2;
$("#myList .span3 .article").each(function(index, obj) {
    if (index < 3)
        $(obj).show();  });

});
  

и display: none в css файле.