【问题标题】:Infinite scrolling in laravel 5laravel 5中的无限滚动
【发布时间】:2016-06-26 09:00:58
【问题描述】:

我在 laravel 中使用无限滚动和分页。我有 8 条记录,我的记录限制是 4。分页工作正常。分页链接带有 2 页(4 * 4 页)。但现在我想使用无限滚动。

对于无限滚动,我使用https://github.com/infinite-scroll/infinite-scroll

我在视图页面中包含了 jquery.infinitescroll.min.js。并编写脚本。 但是向下滚动没有任何效果。

我的视图页面:

             <div class="content" id="content">
                @foreach($item['hits'] as $key => $data )
                   @include('general::partials.product-list')
                @endforeach
             </div>
                {!!$item->render()!!}

我的脚本:

<script type="text/javascript" src="{{ asset('/themes/'.Theme::getCurrent().'/js/jquery.infinitescroll.min.js') }}"></script>
<script type="text/javascript">
    $(function() {
    var loading_options = {
        finishedMsg: "<div class='end-msg'>Congratulations! You've reached the end of the internet</div>",
        msgText: "<div class='center'>Loading news items...</div>",
        img: "/assets/img/ajax-loader.gif"
    };

    $('#content').infinitescroll({
        loading: loading_options,
        navSelector: "ul.pagination",
        nextSelector: "ul.navigation a:first",
        itemSelector: "#content div.cat-item"
    });
}); 
</script>

【问题讨论】:

    标签: jquery laravel laravel-5 infinite-scroll


    【解决方案1】:

    当您尝试执行脚本时,您的脚本似乎尚未加载。使用这种结构:

    $( document ).ready()
    

    只有当所有 JS 文件都加载完毕时才会运行代码。

    【讨论】:

    • 转到浏览器,检查输出 HTML(不是代码检查器)并查看 Laravel 生成指向 jquery.infinitescroll.min.js 的链接的部分。这个链接代码正确吗?
    • 它在我的脚本函数之前创建链接。
    • 是的,但链接是否正确?似乎浏览器没有加载jquery.infinitescroll.min.js
    • 是的,链接是正确的,通过打开该链接我可以在浏览器中看到该 js 文件的代码
    • 好的,尝试在主布局中加载您的脚本(不仅仅是在包含或部分中),因此它将始终与任何页面一起加载。另外,使用$(document).ready()
    猜你喜欢
    • 2016-12-29
    • 2016-10-23
    • 2016-01-18
    • 2016-01-18
    • 1970-01-01
    • 2014-08-24
    • 2015-10-29
    • 2014-04-08
    • 2019-01-29
    相关资源
    最近更新 更多