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))[1]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 的对象中生成导航链接