当前位置: 首页 > 图文教程 > 网页制作 > HTML/XHTML教程 > 基于客户端的分页导航(1)

HTML/XHTML教程
HTML5之后W3C将制定无版本号的HTML
IE6必然灭亡的最新6个理由
网页制作教程:单独对IE6进行兼容
Firefox 3.6频繁崩溃的问题
HTML5的发展:微格式和相关的属性名称
Chrome最新4.0版本支持GreaseMonkey脚本
网页前端常见的攻击方式和预防攻击办法
HTML5标准将把互联网视频扔回到黑暗时代
靠我们自己的力量把IE6推向灭亡
近期热点:HTML5是否真的可以取代Flash
网页知识新手了解:网页设计的发展历史
TinyEditor:简洁且易用的html所见即所得编辑器
ANSI,Unicode,UTF-8网页编码的区别
HTML5实例:20个使用HTML5编写的网站
网页表单设计:主要行为与次要行为
HTML网页实例代码:简洁漂亮的跳转等待页面
经验分享:关于网页布局排版的流程问题
W3C发布7个HTML工作草案
HTML5 旨在解决 Web 中的交互
网页优化的最基础部分:HTML的优化

HTML/XHTML教程 中的 基于客户端的分页导航(1)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-04   浏览: 43 ::
收藏到网摘: n/a

  思路:用纯JS的方法,只能通过判断当前页面的文件名,然后算出上下页地址,首页和尾页需要在脚本中配置好,最后生成导航代码。用数据绑定的方法则要简单得多,设定dataPageSize,然后用 firstPage() 、previousPage() 、nextPage() 和 lastPage() 方法翻页。

  代码示例:

  1. 纯JS的,翻页导航的依据是文件名 page.js脚本文件代码

Number.prototype.add0 = function(){ //对数字类型的扩展,主要用于实现当数字小于一定位数时在前面补0,直到倍数达到为止
return (new Array(len).join("0")+this).slice(-len) //返回字符串,new Array(len).join("0")得到len个相连的"0",然后和数字相加,再从得到的字符串右边起向左截取len位
}
String.prototype.mlink = function(n){ //对字符类型的扩展,主要用于根据文件名中的数字生成链接
return this.link(prefix+n.add0()+suffix) //返回一个以字符串为链接文字,prefix+n.add0()+subffix为链接地址的HTML代码
}
var prefix = "page" //文件名前缀
var suffix = ".htm" //文件名后缀
var first = 1 //第一页的文件名中的数字
var last = 23 //最后一页的文件名中的数字
var len = 2 //文件名中的数字的位数,从以上四个变量中可知文件名为"page01.htm"和"page23.htm"这种形式
var cur_page = location.href.match(new RegExp(prefix+"(\\d+)"+suffix,"i"))|0 //从当前页面地址中查找匹配的数字
var previous = cur_page-1 //的文件名中的数字为当前页的减1
var next = cur_page+1 //的文件名中的数字为当前页的加1
if(cur_page == first) previous = first //如果当前页为首页,则的链接为首页
if(cur_page == last) next = last //如果当前页为尾页,则的链接为尾页
navbar.innerHTML = ["首页".mlink(first),"".mlink(previous),"".mlink(next),"尾页".mlink(last)].join(" ") //在 id 为 navbar 的对象中生成导航链接


  然后在各页中用<div id="navbar"></div><script src="page.js"></script>调用