http://www.cnblogs.com/healer_zll/archive/2009/12/07/1618799.html
由于时间仓促,只给出来思想,用c#模拟实现了下。今天正好有时间,就用js真正实现了下,算是补全上篇吧。
以下为实现代码,思想和上篇一样,也就不多做解释:
$(document).ready(function()
{
var paginated = function(showPage, pageCount, currentPage)
{//showpage,pageCount,currentPage与上文意义相同
var startPage, endPage;
//startpage和endpage为页面显示的起始页数和结束页数
if (pageCount <= showPage)
{
startPage = 1;
endPage = pageCount;
}
else
{
if (currentPage <= Math.floor(showPage / 2))
{
startPage = 1;
endPage = showPage;
}
else if (pageCount - currentPage <= Math.floor(showPage / 2))
{
endPage = pageCount;
startPage = pageCount - showPage + 1;
}
else
{
startPage = currentPage - Math.floor(showPage / 2);
endPage = startPage + showPage - 1;
}
}
for (var i = startPage; i <= endPage; i++)
{
$("<span/>").html(i).appendTo("#nav");
}
$("#nav>span:contains(" + currentPage + ")").addClass("currentPage");
}
顺便感慨下:jquery写js真的很强大,配合vs2008的智能提示更是轻松愉快。