我正在我的PHP项目上使用无限滚动插件infinite-ajax-scroll (https://github.com/webcreate/infinite-ajax-scroll/blob/master/src/jquery-ias.js),并且已经成功使用jquery过滤器实现了滚动。 但是,当应用筛选器时,页面上可能只有很少的项目,我想在不激活滚动条的情况下加载更多项目。
当选择筛选器时,我会计算显示在容器中的项目数量,如果筛选后小于50个,我想加载更多项目。我想调用infinite-ajax-scroll来完成这个功能,因为它已经有一个将项目加载到容器中的方法。
我不是一个JQuery高级编程人员,无法弄清楚jquery-ias.js如何工作和加载更多项目,并想知道如何利用这个类在应用筛选器后获取更多结果。
谢谢任何建议。
我的jQuery代码:
当选择筛选器时,我会计算显示在容器中的项目数量,如果筛选后小于50个,我想加载更多项目。我想调用infinite-ajax-scroll来完成这个功能,因为它已经有一个将项目加载到容器中的方法。
我不是一个JQuery高级编程人员,无法弄清楚jquery-ias.js如何工作和加载更多项目,并想知道如何利用这个类在应用筛选器后获取更多结果。
谢谢任何建议。
我的jQuery代码:
> $('.filter a').click(function(e) {
//filtering code goes here
> //add selected filter to paginate URL to pass to next page of infinite scroll
> var filter = $(e.target).text();
> var paginate_url = $( '.paginate a ').attr('href');
> var next_url = UpdateQueryString(paginate_url, group, encodeURIComponent(filter));
>
> $(".paginate a").attr("href", next_url);
instance.$allAtoms.removeClass('is-filtered');
instance.$filteredAtoms.addClass('is-filtered');
var itemsno = (instance.$filteredAtoms).length;
if (itemsno < displayItemsNo) {
> //ajax call to load more items with filter applied
>
> //HOW TO DO THIS??
>
>// $.ias.loadItems(next_url); ??
>
}
>
> return false;
> });
> // Infinite Ajax Scroll configuration
> jQuery.ias({
> container : '#main', // main container where data goes to append
> item: '.element', // single items
> pagination: '.paginate', // page navigation
> next: '.paginate a', // next page selector
> loader: '<img src="public/img/ajax-loader.gif"/>'
> });