javascript 支持页码格式的分页类

但是他们插件的附属功能很多又不需要,而且没必要就为了这么一个功能区引用这个库,为速度考虑吧,当然你服务器好也行,但是其实这个效果不是必须的,但是觉的会常用,所以就包装成类了,供以后使用,也供有需要的人学习使用。

下面只是一个简单的demo,用的话自己可以在编辑页码样式,有默认的格式。不废话了,自己看吧,有注释使用说明。。。类(3kb)使用可以参照demo,不明白使用的可以留言。

以后会慢慢写一些项目开发中常遇到的问题,以及解决方案,和大家学习分享。

jpage.js


代码如下:

/* 排序工具 by Funny ZAk <silenceacegmail.com> 2009-8-23
"调用方式 var zp = new zakPage(参数);zp.init();
参数以此为 源内容容器,分页结果容器,导航容器,页大小,单挑内容回调函数返回li对象,每个li的样式,选择后的样式没有则为null或""
,默认起始页数,格式化页码显示格式*/
function zakPage(id,pagec,navid,pagesize,lievt,ds,ss,idx,navp){
    this.obj = this;
    this.pageid = id;
    this.pagec = pagec;
    this.navc = navid;
    this.pagesize = pagesize || 7;
    this.lievt = lievt || null;
    this.rcount = 0;
    this.pagecount = 0;
    this.cpage = 1;
    this.ds = ds;
    if(this.ds == null){this.ds = "";}
    this.ss = ss;
    if(this.ss == null){this.ss = "";}
    this.idx = idx;
    this.navpre = navp || ["共{$pcount}页/{$rcount}条,当前第{cpage}页","首页","上一页","下一页","末页"];
    }
zakPage.prototype = {
    init:function(){
        document.getElementById(this.pageid).style.display = "none";
        this.rcount = document.getElementById(this.pageid).getElementsByTagName("li").length;
        var residue = this.rcount%this.pagesize;
        var nums = parseInt(this.rcount/this.pagesize);
        this.pagecount = nums;
        if(residue != 0){this.pagecount = nums+1;}
        this.gopage(this.idx);
        },
    guide:function(){
        var nav = document.getElementById(this.navc);
        var np = this.navpre;
        nav.innerHTML = np[0].replace("{$rcount}",this.rcount).replace("{$pcount}",this.pagecount).replace("{cpage}",this.cpage);
        nav.appendChild(this.createa(np[1],1));
        nav.appendChild(this.createa(np[2],this.cpage-1));
        nav.appendChild(this.createa(np[3],this.cpage+1));
        nav.appendChild(this.createa(np[4],this.pagecount));
        },
    createa:function(html,index){
        var aa = document.createElement("a");
        aa.innerHTML = html;
        var o = this.obj;
        aa.onclick = function(){o.gopage(index);}
        return aa;
        },
    gopage:function(index){
        if(index>this.pagecount){index=1;}
        if(index<=0){index = this.pagecount;}
        this.cpage = index;
        var ghtml = document.getElementById(this.pagec);
        ghtml.innerHTML = "";
        var pages = (index-1)*this.pagesize;
        var pagee = pages+this.pagesize;
        if(pagee>this.rcount){pagee = this.rcount;}
        for(var i=pages;i<pagee;i++){
                var lil = document.createElement("li");
                lil.className = this.ds;
                lil.innerHTML = this.litem(i);
                var sss = this.ss;
                if(this.lievt !=null){
                    lil.lievt = this.lievt;
                    lil.onclick = function(){
                        this.lievt(this);
                        this.className = sss;
                        }
                    }
                ghtml.appendChild(lil);
            }
         this.guide();
        },
    litem:function(index){
            return document.getElementById(this.pageid).getElementsByTagName("li")[index].innerHTML;
        }
    }

下面是完整的测试代码,js已经包括在内

body {
text-align:center;
padding:20px 0 0 0;
font-size:12px;
}
a {
color:#000;
font-size:12px;
cursor:pointer;
}
ul, li {
margin:0;
padding:0;
list-style:none;
}
.contain {
margin:0 auto;
width:825px;
text-align:left;
border:1px #000 solid;
padding:5px;
height:auto;
}
li.sd a,li.sd a:link,li.sd a:visited{background-color:#000; color:#FFF; font-size:13px;}

Jpage Demo - by funnyzak

/* 排序工具 by Funny ZAk 2009-8-23
"调用方式 var zp = new zakPage(参数);zp.init();
参数以此为 源内容容器,分页结果容器,导航容器,页大小,单挑内容回调函数返回li对象,每个li的样式,选择后的样式没有则为null或""
,默认起始页数,格式化页码显示格式*/
function zakPage(id,pagec,navid,pagesize,lievt,ds,ss,idx,navp){
this.obj = this;
this.pageid = id;
this.pagec = pagec;
this.navc = navid;
this.pagesize = pagesize || 7;
this.lievt = lievt || null;
this.rcount = 0;
this.pagecount = 0;
this.cpage = 1;
this.ds = ds;
if(this.ds == null){this.ds = "";}
this.ss = ss;
if(this.ss == null){this.ss = "";}
this.idx = idx;
this.navpre = navp || ["共{$pcount}页/{$rcount}条,当前第{cpage}页","首页","上一页","下一页","末页"];
}
zakPage.prototype = {
init:function(){
document.getElementById(this.pageid).style.display = "none";
this.rcount = document.getElementById(this.pageid).getElementsByTagName("li").length;
var residue = this.rcount%this.pagesize;
var nums = parseInt(this.rcount/this.pagesize);
this.pagecount = nums;
if(residue != 0){this.pagecount = nums+1;}
this.gopage(this.idx);
},
guide:function(){
var nav = document.getElementById(this.navc);
var np = this.navpre;
nav.innerHTML = np[0].replace("{$rcount}",this.rcount).replace("{$pcount}",this.pagecount).replace("{cpage}",this.cpage);
nav.appendChild(this.createa(np[1],1));
nav.appendChild(this.createa(np[2],this.cpage-1));
nav.appendChild(this.createa(np[3],this.cpage+1));
nav.appendChild(this.createa(np[4],this.pagecount));
},
createa:function(html,index){
var aa = document.createElement("a");
aa.innerHTML = html;
var o = this.obj;
aa.onclick = function(){o.gopage(index);}
return aa;
},
gopage:function(index){
if(index>this.pagecount){index=1;}
if(indexthis.rcount){pagee = this.rcount;}
for(var i=pages;i

  • Php 构造函数construct的前下划线是
  • PHP 读取文件内容代码(txt,js等)
  • PHP 用数组降低程序的时间复杂度
  • PHP 柱状图实现代码
  • Ajax+PHP边学边练 之五 图片处理
  • PHPMyadmin 配置文件详解(配置)
  • 又一个php 分页类实现代码
  • php 无限分类的树类代码
  • Asp.net 文本框全选的实现
  • php zip文件解压类代码
  • li>各种男女围巾围法图文

  • photoshop 鼠绘忧郁的少女头像
  • Photoshop 一只可爱的卡通小蜜蜂
  • Photoshop 调出美女质感的红紫色肤色
  • Photoshop 古典的油画效果处理方法
  • photoshop 利用滤镜及素材打造超酷的火焰字
  • photoshop 鼠绘漂亮的熟睡公主
  • Photoshop 华丽的金色宝石皇冠
  • Photoshop 粉红色的人物写真图片
  • Photoshop 漂亮的紫色人物签名效果
  • Photoshop 偏暗的圣诞美女美白
  • Photoshop 蓝色梦幻的潮流壁纸制作
  • Photoshop调色教程 人物淡灰色质感肤色
  • Photoshop 漂亮的圣诞彩球制作
  • Photoshop 简单的光照字效果
  • HTML/JS互相转换工具-IE7兼容版
  • css 在线压缩工具
  • CSS整形与最佳化工具[压缩]
  • JS Minifier js压缩
  • packer_至强的javascript在线加密工具
  • XHTML 代码嵌套查看工具[标签闭合]
  • 我们 在线进制转换 可以实现各类进制间
  • 在线JS脚本校验器检测js错误
  • 将html转换为php,javascript和asp的在线工具
  • 正则表达式30分钟入门教程
  • 正则表达式 基础资料
  • javascript 在线参考手册
  • vbscript微软官方参考手册
  • jQuery入门指南教程
  • asp 学习在线手册
  • php5最新中文参考手册
  • mysql
  • sql数据库学习
  • 常用广告代码
  • 百度近日收录查询
  • alexa排名查询
  • IP/域名WHOIS
  • 网页编辑器
  • QQ在线强制聊天工具 加强修正版
  • 迅雷 快车专用链接加密解密js代码
  • 在线繁简体字转换
  • html中文完全手册
  • qvod解密工具 马克思

function bb(a){alert(a.innerHTML);}
var arr = ["{$rcount}record,total{$pcount}page currenpage{cpage} "," indexpage"," prevpage "," nextpage "," lastpage "];
var zp = new zakPage("jpage","pagec","navs",15,bb,null,null,4,null); //此为默认页码格式
//var zp = new zakPage("jpage","pagec","navs",15,bb,null,null,4,arr); //自定义页码格式
zp.init();

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

(0)

相关推荐

  • javascript分页代码(当前页码居中)

    复制代码 代码如下: function setPage(opt){ if(!opt.pageDivId || opt.allPageNum < opt.curpageNum || opt.allPageNum < opt.showPageNum){return false}; var allPageNum = opt.allPageNum; //总的页数 var showPageNum = opt.showPageNum; //显示的页数 var curpageNum = opt.curpag

  • 某页码显示的helper 少量调整,另附js版

    如果你只想下载现成的用,可以到这个页面上去找.许可证是"WTFPL",也就是"Do What The Fuck You Want To Public License". 源代码如下(因为有注释,就不另外说明了): 复制代码 代码如下: public static class PageNumExt { /// <summary> /// 使用传入的委托计算并产生友好的页码. /// </summary> /// <param name=&

  • js实现下一页页码效果

    效果图: 代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title></title> <style> *{ margin: 0; padding: 0; } .scroll-tool{ position: relative; height: 56px; padding: 12px 160px; background-color

  • js实现前端分页页码管理

    用JS实现前端分页页码管理,可以很美观的区分页码显示(这也是参考大多数网站的分页页码展示),能够有很好的用户体验,这也是有业务需要就写了一下,还是新手,经验不足,欢迎指出批评! 首先先看效果图: 这是初始页面(也就是第一页)的界面,如果为第一页时,则首页和上一页按钮不可用,为了展示分页的效果,我当前的分页是一条一页. 这是页码大于5页时展示的效果:1,2页始终始终显示(考虑到用户体验) 这是最后一页的效果图: 下面直接上js代码: //页码显示 $(function(){ var dqPage

  • Bootstrap jquery.twbsPagination.js动态页码分页实例代码

    Bootstrap风格的分页控件自适应的: 参考网址:分页参考文档 1.风格样式: 2.首先引入js文件jQuery.twbsPagination.js <span style="font-size:14px;"><script type="text/javascript" src="plugins/page/jquery.twbsPagination.js"></script></span> 3.

  • javascript 支持页码格式的分页类

    但是他们插件的附属功能很多又不需要,而且没必要就为了这么一个功能区引用这个库,为速度考虑吧,当然你服务器好也行,但是其实这个效果不是必须的,但是觉的会常用,所以就包装成类了,供以后使用,也供有需要的人学习使用. 下面只是一个简单的demo,用的话自己可以在编辑页码样式,有默认的格式.不废话了,自己看吧,有注释使用说明...类(3kb)使用可以参照demo,不明白使用的可以留言. 以后会慢慢写一些项目开发中常遇到的问题,以及解决方案,和大家学习分享. jpage.js 复制代码 代码如下: /*

  • php显示页码分页类的封装

    本文实例为大家分享了php封装显示页码的分页类,供大家参考,具体内容如下 一.代码 conn.php <?php class Mysql{ public function __construct(){ $this->connect(); } public function connect(){ $conn=mysql_pconnect('localhost','root','root') or die("Connect MySQL False"); mysql_select

  • 超强分页类2.0发布,支持自定义风格,默认4种显示模式

    超强分页类2.0发布,支持自定义风格,默认4种显示模式 看到论坛上有人求百度分页类,所以把几周前的分页类贴出来.    2.0相对1.0修正如下:   1.支持PHP4和PHP5   2.增加了对ajax分页的功能   3.优化了程序整体结构   4.增加了自定义风格的功能 代码如下:  复制代码 代码如下: <?  /**   * filename: ext_page.class.php   * @package:phpbean   * @author :feifengxlq<feifeng

  • 简单好用的ASP.NET分页类(支持AJAX、自定义文字)

    在做网站没用 JS UI控件时 很实用 用法: var ps=new PageString(); /*可选参数*/ ps.SetIsEnglish = true;// 是否是英文 (默认:false) ps.SetIsShowText = true;//是否显示分页文字 (默认:true) //ps.TextFormat="" (默认值:<span class=\"pagetext\"><strong>总共</strong>:{0

  • ASP分页类(支持多风格变换)

    这个分页使用的是0游标,也就是Rs.Open Sql,Conn,0,1.但是感觉也快不了多少,10万条数据的分页时间300多豪秒之间. 复制代码 代码如下: <% '****************************** '名称:分页类 '日期:2005/12/3 '作者:西楼冷月 '网址:www.xilou.net | www.chinaCMS.org '描述:无 '版权:转载请注名出处,作者 '****************************** Class Page Priv

  • 完美的php分页类

    本文实例为大家分享了php分页类的具体代码,供大家参考,具体内容如下 <?php /** file: page.class.php 完美分页类 Page */ class Page { private $total; //数据表中总记录数 private $listRows; //每页显示行数 private $limit; //SQL语句使用limit从句,限制获取记录个数 private $uri; //自动获取url的请求地址 private $pageNum; //总页数 private

  • 仿Aspnetpager的一个PHP分页类代码 附源码下载

    基本逻辑思路和.net的一样,就是将通过实体类来进行配置换成了通过数组进行配置,逻辑比较简单,根据条件判断拼接分页html. 有以下几个简单的功能: 1:支持相关按钮的显示与否配置 2:支持每页数目,文本名称,html标签类名称的自由配置 3:支持url重写过的页面(需自己在配置数组中添加重写规则) 简单吧,还是直接上代码: 核心代码:pager.class.php 复制代码 代码如下: <?php class pager{ //分页的参数配置 private $config=array( //

  • 万能的php分页类

    本文实例为大家分享了php分页类的具体代码,供大家参考,具体内容如下 <?php /*核心:首页.上一页.下一页.尾页的url*/ /*超全局$_SERVER*/ $page = new Page(5,60); var_dump($page->allUrl()); class Page{ // 每页显示的个数 protected $number; // 一共有多少数据 protected $totalCount; // 当前页 protected $page; // url protected

  • 精美漂亮的php分页类代码

    这是一款简单,方便,功能齐全的分页类,可以根据自己的需要更改CSS样式文件以实现分页颜色的控制,利用php分页类,可以省去自己很多时间,只需要在分页的地方嵌入即可,下面看下使用方法: 1,在head里包含pager.css 复制代码 代码如下: <link href="pager.css" type="text/css" rel="stylesheet" /> 2,在分页处进行类的实例化: 复制代码 代码如下: <?php   

  • PHP通用分页类page.php[仿google分页]

    page.php 复制代码 代码如下: <?php /** ** 通用php分页类.(仿Google样式) ** 只需提供记录总数与每页显示数两个参数.(已附详细使用说明..) ** 无需指定URL,链接由程序生成.方便用于检索结果分页. ** 表单采用GET方法提交,可保证在诸如查询之,删除之类的操作时,不丢失URL参数 **/ class Pager{ //IE地址栏地址 var $url; //记录总条数 var $countall; //总页数 var $page; //分页数字链接 v

随机推荐