我们应该经常看到不少的网站没有使用分页功能,而是"点击加载更多文章"实现翻页效果。西柚目前使用的这个主题也是有这个功能的,只是我个人不是特别喜欢这样的功能,所以还是使用的分页效果。但是,对于有些项目而言,尤其是移动端网站,体验上使用加载分页效果会更好一些。
对于加载分页的效果应该是可以用插件实现的,具体我还没有去寻找。在这里整理到无插件实现加载分页的方法,记录下来后面有需要用到的时候再去选择使用。
第一、代码部分
//实现点击加载更多内容JS部分
jQuery(document).ready(function($) {
$('#pagination a').click(function() {
$this = $(this);
$this.addClass('loading').text("我们在在努力加载中,稍等");
var href = $this.attr("href");
if (href != undefined) {
$.ajax({
url: href,
type: "get",
error: function(request) {
},
success: function(data) {
$this.removeClass('loading').text("点击查看更多文章");
var $res = $(data).find(".blockGroup .post-list"); //这里重要,需要根据实际需要调整
$('.blockGroup').append($res.fadeIn(500));
var newhref = $(data).find("#pagination a").attr("href");
if (newhref != undefined) {
$("#pagination a").attr("href", newhref);
} else {
$("#pagination a").remove();
}
}
});
}
return false;
});
});
这个是我们定义加载效果的JS代码部分。
第二、样式部分
#pagination{display:inline-block;position:relative;height:30px;margin-bottom:20px;padding:2px 16px;color:rgba(0,0,0,.44);background:rgba(0,0,0,0);font-size:15px;text-align:center;text-decoration:none;cursor:pointer;border:1px solid rgba(0,0,0,.05);vertical-align:bottom;white-space:nowrap;text-rendering:auto;box-sizing:border-box;border-radius:999em}
可以根据实际需要修改样式。
第三、调出功能
<?php next_posts_link(__('点击加载更多文章')); ?>
这个需要添加到翻页的模板中。