我在基于 Joomla 的网站上设置了无限滚动,以从 mysql 查询中加载数据库结果。它工作正常,但是当我将它设置为一次加载 10 个结果时,它会跳过结果 11-20,然后加载其余值,同样,当我设置为显示 20 个结果时,它会加载前 40 个结果而没有任何重复,然后继续为每个新的分页结果加载 10 个以前的结果和 10 个新的结果,直到它到达列表的末尾。这是我的分页代码,
//
jimport('joomla.html.pagination');
// prepare the pagination values
$total = $this->xyz->getTotal('posts',' and cat_id = ' . $cat->cat_id);
$limit = $mainframe->getUserStateFromRequest('global.list.limit','limit', $mainframe->getCfg('list_limit'));
$limitstart = $mainframe->getUserStateFromRequest(JRequest::getVar('option').'limitstart','limitstart', 0);
$this->items = $this->xyz->categoryItems(JRequest::getInt('cat_id'),$limitstart,$limit);
// create the pagination object
$_pagination = new JPagination($total, $limitstart,$limit);
$_pagination_footer = $_pagination->getListFooter();
//
我应该提到我在上面代码的第 7 行将 $limit 值设置为 10 以使其一次加载 10 个。如果它保留为 $limit 它一次加载 20 个。
最好我想一次加载 50 个,没有任何重复或遗漏,但就像现在一样,当设置为 50 时,我会得到很多重复。我发现将其设置为 10 会给我最好的结果,但仍然会跳过 11-20。
任何建议或想法将不胜感激。