核心提示:滑动菜单是一种较常用的菜单形式,在罗列二级分类的场合下广泛使用。 滑动菜单是一种较常用的菜单形式,在罗列二级分类的场合下广泛使用。其特点是代码量极小,数据描述简洁。 本例使用无线表格,以类的书写方式表述。 本代码可自由扩散。 ---><br /><style><br />table {font-size = 9pt}<br />td {height = 20px}<br /></style><br /><body><br /><span id="menus"></span><br /><span id="view"></span><br /></body><br /><br /><script for=pad event=onclick><br />// 大类节点点击响应<br />for(var i=1;i<this.parentElement.rows.length;i+=2)<br />this.parentElement.rows[i].style.display = "none";<br />this.parentElement.rows[this.rowIndex+1].style.display=′block′;<br />view.innerHTML = this.v1 +":"+ this.v2; // 根据大小类自行构造相应动作<br /></script><br /><br /><script for=bar event=onclick><br />// 小类节点点击响应<br />view.innerHTML = this.v1 +":"+ this.v2; // 根据大小类自行构造相应动作<br /></script><br /><br /><script><br />/**<br />* 产生菜单的html代码串<br />* 入口参数为菜单默认打开的大类号<br />*/<br />function menu(n) {<br />this.ar = new Array(<br />/**<br />* 参数数组<br />* 列1:大类<br />* 列2:小类<br />* 列3:标题<br />*/<br />new Array(1,0,"大类一"),<br />new Array(1,1,"小类一"),<br />new Array(1,2,"小类二"),<br />new Array(2,0,"大类二"),<br />new Array(2,1,"小类一"),<br />new Array(2,2,"小类二"),<br />new Array(2,3,"小类三"),<br />new Array(3,0,"大类三"),<br />new Array(3,1,"小类一"),<br />new Array(3,2,"小类二"),<br />new Array(4,0,"大类四"),<br />new Array(4,1,"小类一"),<br />new Array(4,2,"小类二"),<br />new Array(4,3,"小类三")<br />);<br />this.width =120;<br />this.bgcolor = "#f0f0f0";<br />this.bordercolorlight = "#c0c0c0";<br />this.bordercolordark = "#FFFFFF";<br />this.tr_bgcolor = "#d0d0d0";<br />var s = "<table border=1 align=center width="+this.width+" bgcolor="+this.bgcolor+" bordercolorlight="+this.bordercolorlight+" bordercolordark="+this.bordercolordark+" CELLPADDING=0 CELLSPACING=0>"<br />for(var i=0;i<this.ar.length;i++) { // 构造菜单的html结构,其中将大小类编号作为自定义参数,以便事件响应时使用。<br />if(this.ar[i][1] == 0) {<br />if(i > 0)<br />s += "</table></td></tr>";<br />var vk = this.ar[i][0]==n"block":"none";<br />s += "<tr id=′pad′ bgcolor="+this.tr_bgcolor+" v1="+this.ar[i][0]+" v2="+this.ar[i][1]+"><td align=center>"+this.ar[i][2]+"</td></tr><tr style=′display:"+vk+"′><td><table width=100%>";<br />}else<br />s += "<tr><td id=′bar′ v1="+this.ar[i][0]+" v2="+this.ar[i][1]+">"+this.ar[i][2]+"</td></tr>";<br />}<br />s += "</table></td></tr></table>";<br />return s;<br />}<br /><br />/*** 创建菜单 ***/<br />menus.innerHTML = menu(4);<br /></script>