(function($){
var p_range = 4, //链接数量
p_datanum = 4, //多少条数据
p_pagesize = 10, //每页显示多少
p_link = ' %page% ', //链接样式
p_curLink = ' %page% ', //当前页的链接样式
p_preHtml = '上一页 ',
p_nextHtml = '下一页',
p_preHtml_d = '上一页',
p_nextHtml_d= '下一页',
p_nextRangeHtml = '下%range%页',
p_info = '%current%/%end% 共%datanum%条信息 ',
p_style = '%preHtml%%link%%nextHtml%', //分页样式结构
p_load_str = sprintf('
' ,
W_NEW_COMM_PATH + 'img/loading.gif' ),
p_dataObj = $('.list_Comment_hot'), //内容容器对象
p_pageObj = $('.Paging'), //分页容器对象
p_bindObj = '.Paging a', //触发事件对象
p_ajaxData = {pagesize:p_pagesize}, //ajax 传递json对象
p_ajaxUrl = 'http://china.findlaw.cn/zhishi/index.php?m=Comment&a=forwardListJSON&module=zhuanti&aid=20130307&jsoncallback=?', //ajax处理文件
//以下变量如无特殊需要,请忽修改
p_index = 1, //首页
p_end = Math.ceil(p_datanum/p_pagesize), //最后一页,也就是总页数
p_current = 1, //当前页
p_low = 0,
p_upp = 0,
p_pre = 0,
p_next = 0,
p_nextRange = 0,
// 缓存对象
p_cache ={};
if(p_range > p_end) p_range = p_end;
var delta = Math.ceil(p_range / 2);
$(function(){
p_pageObj.html(makePageHtml());
runAjax($(p_bindObj).eq(0),true);
});
function runAjax(obj,noScroll){
var p = parseInt(obj.attr('p'));
var cache_name = 'cache_'+p;
var cache_json_name = 'cache_json_'+p;
var cache_data = p_cache[cache_name];
quotePanel.css('display','none').insertAfter($('body'));
if( !(cache_data) ){
$(p_bindObj).unbind('click');
p_dataObj.html(p_load_str);
p_ajaxData.page = p; //传递页数过去
$.getJSON(p_ajaxUrl,p_ajaxData,function(data){
if(data.state == 200){
p_cache[cache_json_name] = data.data; //存入json缓存
current_page_data = data.data;
var html = makeDataHtml(data.data);
p_current = p;
p_pageObj.html(makePageHtml());
p_dataObj.html(html);
$(p_bindObj).click(function(){
runAjax($(this));
return false;
});
p_cache[cache_name] = html;
}else alert(data.data);
});
}else{
p_current = p;
p_pageObj.html(makePageHtml());
$(p_bindObj).click(function(){
runAjax($(this));
return false;
});
p_dataObj.html(cache_data);
}
if(!noScroll) scroll_comment();
current_page_data = p_cache[cache_json_name];
return false;
}
/*
计算分页码
*/
function planning(){
if(p_current - delta > p_end - p_range){
p_low = p_end - p_range + 1;
p_upp = p_end;
}else{
var offset = p_current - delta;
if(p_current - delta < 0){
offset = 0;
}
p_low = offset + 1;
p_upp = offset + p_range;
}
if(p_current > 1 && p_end>0) p_pre= p_current-1;
else p_pre = 0;
if(p_current < p_end) p_next = p_current+1;
else p_next = 0;
if(p_current+p_range < p_end ) p_nextRange = p_current+p_range;
else p_nextRange=0;
}
/*
构造html节点,可根据页面排序来编写
*/
function makeDataHtml(data){
return makeHtml_dl(data);
}
function makePageHtml(){
if(p_end<=1){
if(p_datanum == 0){
return '美好的心情,从评论开始 ^0^';
}
return '当前共有'+p_datanum+'条信息';
}
planning();
var pre_str = next_str = link_str = nextRange_str = '';
if(p_pre > 0){
pre_str = replaceAll('%index%',p_index,p_preHtml);
pre_str = replaceAll('%pre%',p_pre,pre_str);
}else{
pre_str = p_preHtml_d;
}
if(p_next > 0){
next_str = replaceAll('%end%',p_end,p_nextHtml);
next_str = replaceAll('%next%',p_next,next_str);
}else{
next_str = p_nextHtml_d;
}
if(p_nextRange > 0){
nextRange_str = replaceAll('%nextRange%',p_nextRange,p_nextRangeHtml);
nextRange_str = replaceAll('%range%',p_range,nextRange_str);
}
for(i=p_low;i<=p_upp;i++){
if(i == p_current){
link_str += replaceAll('%page%',i,p_curLink);
}else{
link_str += replaceAll('%page%',i,p_link);
}
}
if(p_low > 1){
if(p_low > 2){
// link_str = replaceAll('%page%',1,p_link) + p_link.replace('%page%',p_current).replace('%page%','..') +link_str;
link_str = replaceAll('%page%',1,p_link) + ' ... ' +link_str;
}else{
link_str = replaceAll('%page%',1,p_link) + link_str;
}
}
if(p_end > p_upp){
if(p_end - p_upp == 1){
link_str += replaceAll('%page%',p_end,p_link);
}else{
// link_str += p_link.replace('%page%',p_current).replace('%page%','..') + replaceAll('%page%',p_end,p_link);
link_str += ' ... ' + replaceAll('%page%',p_end,p_link);
}
}
info_str = replaceAll('%current%',p_current,p_info);
info_str = replaceAll('%end%',p_end,info_str);
info_str = replaceAll('%datanum%',p_datanum,info_str);
return p_style.replace('%info%',info_str).replace('%preHtml%',pre_str)
.replace('%link%',link_str).replace('%nextHtml%',next_str).replace('%nextRange%',nextRange_str);
}
})(jQuery)