我希望在joomla中实现一个基于ajax的分页系统。 以前有人尝试过吗?还有指示或建议?
使用joomla,你不能通过"get"的方式离开URL。这禁止几乎所有分页类工作,因为大多数使用URL修改来工作(通过get)。所以我的替代方案是post或ajax分页,ajax似乎更容易完成,并且会有更好的结果。
我尝试过的任何教程都没有那么好。我不知道这是否真的重要,但我正在使用MySQLi。
AddFullAJAX插件,在之前的答案中建议,默认情况下尝试使您的网站"fullajax'd"。但这可以简单地覆盖。这里有几个简单的步骤来配置这个插件,以启用AJAX(正确的AHAH ;))分页:
- 将"启用职位更新"设置为"使用fullajax_tmpl"(也不要忘记安装此模板)
- 在"内容CSS id"中需要设置内容ID的位置,放置您的内容
- 在"高级选项"中的"FullAjax参数"字段中需要全部删除,并放置下一个代码:
function wrapPager(){
$$('div.pagination a').addEvent('click', function(){
hax({url:this.href, id:fullAjaxId,nohistory:1, onload:wrapPager});
return false;
});
}
window.addEvent('domready', function() {
wrapPager()
})
同样,您可以在没有插件的情况下做,只需在模板中下载并连接 FullAJAX 库即可。然后使用下一个示例:
function wrapPager(){
$$('div.pagination a').addEvent('click', function(){
var url = this.href + '&tmpl=component'
hax({url:url, id:'id-of-block-where-a-content',nohistory:1, onload:wrapPager});
return false;
});
}
window.addEvent('domready', function() {
wrapPager()
})
更多关于hax()
可以在维基页面上找到
我认为您应该编写一个组件/插件并编辑 AJAX 使用的模板......由于这很难实现并且消耗大量时间,因此为什么不使用Joomla 2.5并使用这个出色的插件:http://extensions.joomla.org/extensions/core-enhancements/performance/scripts/13293
这里有一个小演示:http://getsite.org.ua/jdemo/
PS:使用的模块/组件可能存在一些兼容性问题,因此您可以搜索/解决它们:)