最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

原生javascript實(shí)現(xiàn)的分頁插件pagenav

 更新時間:2014年08月28日 09:18:57   投稿:hebedich  
這幾天要做一個前臺頁面,涉及到分頁,不想自己去寫所以在網(wǎng)上找jquery看有沒有好用一點(diǎn)的分頁組件,結(jié)果發(fā)現(xiàn)有很多,但是都很麻煩,看到了這個叫pagenav的發(fā)現(xiàn)相對來說還是很容易上手的,于是就直接用了,在我看來,能解決問題的辦法就是好辦法.越簡單越好.

這一款是用原生javascript實(shí)現(xiàn)的分頁插件pagenav,頁碼顯示jquery插件,只需要存在#pageNav,則會在其中顯示頁碼,調(diào)用時可根據(jù)需要先重寫go方法.(已去除jquery依賴)。。。。

插件代碼如下:

/*
 **************************
 author:Keel (keel.sike@gmail.com)
 **************************

 頁碼顯示jquery插件,只需要存在#pageNav,則會在其中顯示頁碼.
 調(diào)用時可根據(jù)需要先重寫go方法.(已去除jquery依賴)

 **************************
 示例(注意:頁面中放置id為pageNav的html對象):

 //轉(zhuǎn)到頁碼時觸發(fā)的自定義方法,p為當(dāng)前頁碼,pn為總頁數(shù)
 pageNav.fn = function(p,pn){
 alert(p+","+pn);
 };
 //初始跳到第3頁,共33頁
 pageNav.go(3,33);

 */
var pageNav = pageNav || {};
pageNav.fn = null;
//p為當(dāng)前頁碼,pn為總頁數(shù)
pageNav.nav = function(p, pn) {
  //只有一頁,直接顯示1
  if (pn <= 1) {
    this.p = 1;
    this.pn = 1;
    return this.pHtml2(1);
  }
  if (pn < p) {
    p = pn;
  };
  var re = "";
  //第一頁
  if (p <= 1) {
    p = 1;
  } else {
    //非第一頁
    re += this.pHtml(p - 1, pn, "上一頁");
    //總是顯示第一頁頁碼
    re += this.pHtml(1, pn, "1");
  }
  //校正頁碼
  this.p = p;
  this.pn = pn;

  //開始頁碼
  var start = 2;
  var end = (pn < 9) ? pn: 9;
  //是否顯示前置省略號,即大于10的開始頁碼
  if (p >= 7) {
    re += "...";
    start = p - 4;
    var e = p + 4;
    end = (pn < e) ? pn: e;
  }
  for (var i = start; i < p; i++) {
    re += this.pHtml(i, pn);
  };
  re += this.pHtml2(p);
  for (var i = p + 1; i <= end; i++) {
    re += this.pHtml(i, pn);
  };
  if (end < pn) {
    re += "...";
    //顯示最后一頁頁碼,如不需要則去掉下面這一句
    re += this.pHtml(pn, pn);
  };
  if (p < pn) {
    re += this.pHtml(p + 1, pn, "下一頁");
  };
  return re;
};
//顯示非當(dāng)前頁
pageNav.pHtml = function(pageNo, pn, showPageNo) {
  showPageNo = showPageNo || pageNo;
  var H = " <a href='javascript:pageNav.go(" + pageNo + "," + pn + ");' class='pageNum'>" + showPageNo + "</a> ";
  return H;

};
//顯示當(dāng)前頁
pageNav.pHtml2 = function(pageNo) {
  var H = " <span class='cPageNum'>" + pageNo + "</span> ";
  return H;
};
//輸出頁碼,可根據(jù)需要重寫此方法
pageNav.go = function(p, pn) {
  //$("#pageNav").html(this.nav(p,pn)); //如果使用jQuery可用此句
  document.getElementById("pageNav").innerHTML = this.nav(p, pn);
  if (this.fn != null) {
    this.fn(this.p, this.pn);
  };
};

效果如下:

演示地址:http://demo.jb51.net/js/2014/pagenav/  有需要的朋友自己扒代碼吧,很簡單,我就不提供直接下載了

相關(guān)文章

最新評論

太湖县| 宜黄县| 监利县| 浑源县| 土默特左旗| 武功县| 潍坊市| 万山特区| 阳新县| 桑日县| 都江堰市| 井陉县| 依安县| 老河口市| 伊吾县| 绥芬河市| 天镇县| 张家口市| 衡水市| 山阴县| 高安市| 铜梁县| 墨竹工卡县| 上犹县| 孝昌县| 五河县| 大港区| 宁明县| 沭阳县| 金昌市| 台南市| 江油市| 六安市| 合阳县| 鄂托克前旗| 故城县| 禹州市| 甘洛县| 南康市| 益阳市| 修文县|