代码要结合html一起看估计是个动态菜单

解决方案 »

  1.   

    源文件如下:前一段是在menu.js中,你能把前面属性的含义给我说一下吗?
    <%@ page contentType="text/html;charset=gb2312"  language="java" %>
    <%@page import="hzdq.fdjc.DbConn.*"%>
    <%@page import="java.sql.*" %>
    <%@page import="java.util.*" %>
    <jsp:useBean id="user" scope="page" class="hzdq.fdjc.Admin.user" />
    <html>
    <head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <script language="JavaScript" src="../include/menu.js">
    </script>
    <link rel="stylesheet" href="../include/ydl.css" type="text/css">
    </head>
    <body background="../images/newweb/nei_left_menu_bg.gif">
    <%
    String num=request.getParameter("num");
     if(num==null||num.equals("null"))
     num="1";
    int v_num=Integer.parseInt(num);
     //数据库连接
     DBConnectionManager Conn=DBConnectionManager.getInstance();
     Connection con=Conn.getConnection();
     user.setConnection(con);
     String userid=(String)session.getAttribute("userid");
     String roleid=(String)session.getAttribute("roleid");
    %>
    <table  border="0" cellspacing="0" cellpadding="0" >
      <tbody> 
      <tr>
       <td background="../images/newweb/nei_left_menu_bg.gif"  width="183">
       <table  border="0" cellspacing="0" cellpadding="0" >
           <tbody> 
            <tr>
    <td>
    <div id="Layer1" style="position:absolute; width:183px; height:150px; z-index:1; left: 0px">
    <%
      int count=0;
      Vector vData=new Vector();
                  String[] sData=new String[4];
                  vData=(Vector)user.getmodule();;//得到模块信息
      for(int i=0;i<vData.size();i++)
      {
       sData=(String[])vData.get(i);
       count++;
       Vector vData1=new Vector();
                   String[] sData1=new String[8];
                   vData1=(Vector)user.getmodule_sub(sData[0],roleid,userid,"0");
     %>
     <table cellspacing=0 cellpadding=0 width=183 border="0" background="../images/newweb/nei_menu_6.gif">
                    <tbody>
    <tr style="CURSOR: hand">
    <td valign="bottom" height=20 class=menu_title id=menuTitle<%=count%> onClick=menuChange(menu<%=count%>,120,menuTitle<%=count%>); background="../images/newweb/nei_left_menu<%if(i==0) out.print("1"); else out.print("8");%>.gif" ><%out.print("&nbsp;&nbsp;&nbsp;"+sData[2]);%>
    </tr>
       <tr>
                      <td width="183">
       <%
       if (i==0)
       {
           %>
                        <div class=sec_menu id=menu<%=count%> style="FILTER: alpha(Opacity=100); OVERFLOW: hidden; WIDTH: 183px; HEIGHT: <%=(vData1.size()+1)*20%>px"> 
                       <%
       }
       else
       {
       %>
    <div class=sec_menu id=menu<%=count%> style="DISPLAY: none; FILTER: alpha(Opacity=0); WIDTH: 183px; HEIGHT: 0px">
       <%
       }
       %>
        <%
    if (count==1)
     {
     %>
      <script language=javascript>
       var whichOpen=menuTitle1;
       var whichContinue="";
      </script>
     <%
    }
    %>
       <%for(int j=0;j<vData1.size();j++)
    {
    sData1=(String[])vData1.get(j); 
    if(sData1[7]==null)
    sData1[7]=",";
    if(sData1[5]==null)
    sData1[5]=",";%>
    <li class="nei_zimenu">
    <%if(sData1[7].indexOf(","+roleid+",")!=-1||sData1[5].indexOf(","+userid+",")!=-1||"0".equals(roleid))
       {%>
       <a href="doc_more.jsp?sub_id=<%=sData1[0]%>&sub_name=<%=sData1[4]%>&name=<%=sData1[2]%>" target="main2" class="lan"><%=sData1[4]%></a>
    <%}
    else
    {out.print(sData1[4]);}%>
    </li><%}%></ul></td></tr>
    </td>
    </tbody>
                  </table>
         <%}%>
    </div>
    </td>
    </tr>
           </tbody>  
       </table>
       </td>
      </tr>
      </tbody> 
    </table>
    </body>
    </html>
    <%Conn.freeConnection(con);%>
      

  2.   

    /**
    *&Iuml;&Ocirc;&Ecirc;&frac34;&Iuml;&Acirc;&Agrave;&shy;&sup2;&Euml;&micro;&yen;
    *@param obj &Iuml;&Acirc;&Agrave;&sup2;&sup2;&Euml;&micro;&yen;
    *@param maxh ×&icirc;&acute;ó&cedil;&szlig;&para;&Egrave;
    *@param obj2 &Ouml;÷&sup2;&Euml;&micro;&yen;
    */
    function menuShow(obj,maxh,obj2) 
    {
      if(obj.style.pixelHeight<maxh)
      {
        obj.style.pixelHeight+=maxh/20; //&Iuml;&Acirc;&Agrave;&shy;&sup2;&Euml;&micro;&yen;&Ouml;&eth;&frac12;&yen;&Agrave;&shy;&iquest;&ordf;
    obj.filters.alpha.opacity+=5;  //&Iuml;&Acirc;&Agrave;&shy;&sup2;&Euml;&micro;&yen;&Ouml;&eth;&frac12;&yen;±&auml;&Aacute;&Aacute;
    obj2.background="../images/newweb/nei_left_menu1.gif"; //&Ccedil;&ETH;&raquo;&raquo;&Ouml;÷&sup2;&Euml;&micro;&yen;&micro;&Auml;±&sup3;&frac34;°&Iacute;&frac14;&AElig;&not;
        if(obj.style.pixelHeight==maxh/10)
      obj.style.display='block';  //&Eacute;è&Ouml;&Atilde;&Iuml;&Acirc;&Agrave;&shy;&sup2;&Euml;&micro;&yen;&Icirc;&ordf;&Iuml;&Ocirc;&Ecirc;&frac34;×&acute;&Igrave;&not;
    myObj=obj;
    myMaxh=maxh;
    myObj2=obj2;
    setTimeout('menuShow(myObj,myMaxh,myObj2)','5'); //&Atilde;&iquest;&cedil;&ocirc;5&ordm;&Aacute;&Atilde;&euml;&Ouml;&acute;&ETH;&ETH;&Ograve;&raquo;&acute;&Icirc;menuShow&ordm;&macr;&Ecirc;&yacute;&pound;&not;&Ouml;&AElig;&Ocirc;ì&Iuml;&Acirc;&Agrave;&shy;&sup2;&Euml;&micro;&yen;&frac12;&yen;±&auml;&micro;&Auml;&ETH;§&sup1;&ucirc;
      }
    }/**
    *&Ograve;&thorn;&sup2;&Oslash;&Iuml;&Acirc;&Agrave;&shy;&sup2;&Euml;&micro;&yen;
    *@param obj &Iuml;&Acirc;&Agrave;&sup2;&sup2;&Euml;&micro;&yen;
    *@param maxh ×&icirc;&acute;ó&cedil;&szlig;&para;&Egrave;
    *@param obj2 &Ouml;÷&sup2;&Euml;&micro;&yen;
    */
    function menuHide(obj,maxh,obj2)
    {
      if(obj.style.pixelHeight>0)
      {
        if(obj.style.pixelHeight==maxh/20)
      obj.style.display='none';  //&Eacute;è&Ouml;&Atilde;&Iuml;&Acirc;&Agrave;&shy;&sup2;&Euml;&micro;&yen;&Icirc;&ordf;&sup2;&raquo;&Iuml;&Ocirc;&Ecirc;&frac34;×&acute;&Igrave;&not;
        obj.style.pixelHeight-=maxh/20; //&Iuml;&Acirc;&Agrave;&shy;&sup2;&Euml;&micro;&yen;&Ouml;&eth;&frac12;&yen;…§&Acirc;&pound;
    obj.filters.alpha.opacity-=5;  //&Iuml;&Acirc;&Agrave;&shy;&sup2;&Euml;&micro;&yen;&Ouml;&eth;&frac12;&yen;±&auml;°&micro;
    obj2.background="../images/newweb/nei_left_menu8.gif";  //&Ccedil;&ETH;&raquo;&raquo;&Ouml;÷&sup2;&Euml;&micro;&yen;&micro;&Auml;±&sup3;&frac34;°&Iacute;&frac14;&AElig;&not;
    myObj=obj;
    myMaxh=maxh
    myObj2=obj2;
    setTimeout('menuHide(myObj,myMaxh,myObj2)','5');  //&Atilde;&iquest;&cedil;&ocirc;5&ordm;&Aacute;&Atilde;&euml;&Ouml;&acute;&ETH;&ETH;&Ograve;&raquo;&acute;&Icirc;menuShow&ordm;&macr;&Ecirc;&yacute;&pound;&not;&Ouml;&AElig;&Ocirc;ì&Iuml;&Acirc;&Agrave;&shy;&sup2;&Euml;&micro;&yen;&frac12;&yen;±&auml;&micro;&Auml;&ETH;§&sup1;&ucirc;
      }
      else
        if(whichContinue)
      whichContinue.click();
    }function menuChange(obj,maxh,obj2)
    {
      if(obj.style.pixelHeight)
      {
        menuHide(obj,maxh,obj2);
    whichOpen='';
    whichcontinue='';
      }
      else
        if(whichOpen)
    {
      whichContinue=obj2;
          whichOpen.click();
    }
    else
    {
      menuShow(obj,maxh,obj2);
      whichOpen=obj2;
      whichContinue='';
    }
    }
      

  3.   

    /**
    *显示下拉菜单
    *@param obj 下拉菜单
    *@param maxh 最大高度
    *@param obj2 主菜单
    */
    function menuShow(obj,maxh,obj2) 
    {
      if(obj.style.pixelHeight<maxh)
      {
        obj.style.pixelHeight+=maxh/20; //下拉菜单逐渐弹出
    obj.filters.alpha.opacity+=5;  //下拉菜单逐渐变亮
    obj2.background="../images/newweb/nei_left_menu1.gif"; //切换主菜单的背景图片
        if(obj.style.pixelHeight==maxh/10)
      obj.style.display='block';  //设置下拉菜单为可显示状态
    myObj=obj;
    myMaxh=maxh;
    myObj2=obj2;
    setTimeout('menuShow(myObj,myMaxh,myObj2)','5'); //每隔5毫秒执行一次menuShow函数,制造渐变效果
      }
    }/**
    *隐藏下拉菜单
    *@param obj 下拉菜单
    *@param maxh 最大高度
    *@param obj2 主菜单
    */
    function menuHide(obj,maxh,obj2)
    {
      if(obj.style.pixelHeight>0)
      {
        if(obj.style.pixelHeight==maxh/20)
      obj.style.display='none';  //设置下拉菜单为不可显示状态
        obj.style.pixelHeight-=maxh/20; //下拉菜单逐渐収拢
    obj.filters.alpha.opacity-=5;  //下拉菜单逐渐变暗
    obj2.background="../images/newweb/nei_left_menu8.gif";  //切换主菜单背景图片
    myObj=obj;
    myMaxh=maxh
    myObj2=obj2;
    setTimeout('menuHide(myObj,myMaxh,myObj2)','5');  //每隔5毫秒执行一次menuShow函数,制造渐变效果
      }
      else
        if(whichContinue)
      whichContinue.click();
    }function menuChange(obj,maxh,obj2)
    {
      if(obj.style.pixelHeight)
      {
        menuHide(obj,maxh,obj2);
    whichOpen='';
    whichcontinue='';
      }
      else
        if(whichOpen)
    {
      whichContinue=obj2;
          whichOpen.click();
    }
    else
    {
      menuShow(obj,maxh,obj2);
      whichOpen=obj2;
      whichContinue='';
    }
    }