您的位置:首页 > Web前端 > JavaScript

一个简单的JS菜单,带效果截图

2008-11-18 21:34 609 查看
<script type="text/javascript"><!--
google_ad_client = "pub-4490194096475053";
/* 内容页,300x250,第一屏 */
google_ad_slot = "3685991503";
google_ad_width = 300;
google_ad_height = 250;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>


<style>
table {font-size = 9pt}
td {height = 20px}
</style>
<body>
<span id="menus"></span>
<span id="view"></span>
</body>
<script for=pad event=onclick>
// 大类节点点击响应
for(var i=1;i<this.parentElement.rows.length;i+=2)
 this.parentElement.rows[i].style.display = "none";
this.parentElement.rows[this.rowIndex+1].style.display='block';
view.innerHTML = this.v1 +":"+ this.v2; // 根据大小类自行构造相应动作
</script>
<script for=bar event=onclick>
// 小类节点点击响应
view.innerHTML = this.v1 +":"+ this.v2; // 根据大小类自行构造相应动作
</script>
<script>
/**
* 产生菜单的html代码串
* 入口参数为菜单默认打开的大类号
*/
function menu(n) {
  this.ar = new Array(
  /**
   * 参数数组
   * 列1:大类
   * 列2:小类
   * 列3:标题
   */
  new Array(1,0,"大类一"),
  new Array(1,1,"小类一"),
  new Array(1,2,"小类二"),
  new Array(2,0,"大类二"),
  new Array(2,1,"小类一"),
  new Array(2,2,"小类二"),
  new Array(2,3,"小类三"),
  new Array(3,0,"大类三"),
  new Array(3,1,"小类一"),
  new Array(3,2,"小类二"),
  new Array(4,0,"大类四"),
  new Array(4,1,"小类一"),
  new Array(4,2,"小类二"),
  new Array(4,3,"小类三")
  );
  this.width =120;
  this.bgcolor = "#f0f0f0";
  this.bordercolorlight = "#c0c0c0";
  this.bordercolordark = "#FFFFFF";
  this.tr_bgcolor = "#d0d0d0";
  var s = "<table border=1 align=center width="+this.width+" bgcolor="+this.bgcolor+" bordercolorlight="+this.bordercolorlight+" bordercolordark="+this.bordercolordark+" CELLPADDING=0 CELLSPACING=0>"
  for(var i=0;i<this.ar.length;i++) { // 构造菜单的html结构,其中将大小类编号作为自定义参数,以便事件响应时使用。
    if(this.ar[i][1] == 0) {
      if(i > 0)
        s += "</table></td></tr>";
      var vk = this.ar[i][0]==n?"block":"none";
      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%>";
    }else
      s += "<tr><td id='bar' v1="+this.ar[i][0]+" v2="+this.ar[i][1]+">"+this.ar[i][2]+"</td></tr>";
  }
  s += "</table></td></tr></table>";
  return s;
}
/*** 创建菜单 ***/
menus.innerHTML = menu(4);
</script
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  menu table html border function c