Javascript Symfony 3无限长卷轴用于发布

Javascript Symfony 3无限长卷轴用于发布,javascript,php,jquery,symfony,symfony-3.3,Javascript,Php,Jquery,Symfony,Symfony 3.3,我有一个网站,上面有很多信息 我想为我的公告制作一个无限滚动加载 事实上,这就是我的twig.html中的内容 {% extends 'base.html.twig' %} {% block body %} </br> <div class="container"> <!-- Menu --> {% include '::announce/menu.html.twig' %} {% f

我有一个网站,上面有很多信息

我想为我的公告制作一个无限滚动加载

事实上,这就是我的twig.html中的内容

{% extends 'base.html.twig' %}
{% block body %}

</br>
        <div class="container">


        <!-- Menu -->

        {% include '::announce/menu.html.twig' %}


        {% for announce in announces|slice(0, 4) %}

        <!-- Detail Announce -->

            {% include '::announce/' ~ game ~ '/preview.html.twig' %}

        {% endfor %}

    </div>

{% endblock %}
或者只是我以前代码中的一个更正


谢谢大家

我在这里看到两个问题:

  • 您必须渲染细枝文件
  • 当你有很多公告时,你的机制会很慢
我们以另一种方式成功开发了连续滚动功能。 我们没有一次加载所有文章,但只足以填充页面。 Ajax调用是针对控制器的方法创建的,下一页作为参数之一

控制器的方法调用repository以获得正确数量的下一篇文章,并将它们返回到呈现的细枝文件中

{% block javascripts %}

 <script type="text/javascript">
        jQuery(document).ready(function($) {
            var count = 2;
            $(window).scroll(function(){
                    if  ($(window).scrollTop() == $(document).height() - $(window).height()){
                       loadArticle(count);
                       count++;
                    }
            });

            function loadArticle(pageNumber){   
                    $('a#inifiniteLoader').show('fast');
                    $.ajax({
                        url: "{{ asset('ajax/ajax.html.twig') }}",
                        type:'POST',
                        data: "action=infinite_scroll&page_no="+ pageNumber + '&loop_file=loop',
                        success: function(html){
                            $('a#inifiniteLoader').hide('1000');
                            $("#content").append(html);    // This will be the div where our content will be loaded
                        }
                    });
                return false;
            }

        });
{% for announce in announces|slice(NBR, NBR+4) %}