zoukankan      html  css  js  c++  java
  • JS树形菜单

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>树形菜单2</title>
    <style type="text/css">
    <!--
    .headtd1 { background: #00A4E1; border: 2px outset; border-color: #00BBFF #0077FF #0077FF #00BBFF; cursor: hand; font-size: 9pt}
    .headtd2 { background: #20C1FF; border: 2px outset; border-color: #60D3FF #0077FF #0077FF #60D3FF; cursor: hand; font-size: 9pt}
    .bodytd { background: #99CCFF; border: 2px outset; border-color: #B0D8FF #0077FF #0077FF #B0D8FF; font-size: 9pt}
    -->
    </style>
    <script language="JavaScript">
    scores = new Array(20);
    var numTotal=0;NS4 = (document.layers) ? 1 : 0;IE4 = (document.all) ? 1 : 0;ver4 = (NS4 || IE4) ? 1 : 0;
    if (ver4) { with (document) { write("<STYLE TYPE='text/css'>");
    if (NS4) { write(".parent {position:absolute; visibility:visible}");
    write(".child {position:absolute; visibility:visible}");
    write(".regular {position:absolute; visibility:visible}")
    }
    else { write(".child {display:none}") }
    write("</STYLE>"); }}function getIndex(el)
    { ind = null; for (i=0; i<document.layers.length; i++) { whichEl = document.layers[i];
    if (whichEl.id == el) { ind = i;
    break; } } return ind;}function arrange() { nextY = document.layers[firstInd].pageY +document.layers[firstInd].document.height; for (i=firstInd+1; i<document.layers.length; i++) { whichEl = document.layers[i];
    if (whichEl.visibility != "hide") { whichEl.pageY = nextY; nextY += whichEl.document.height; } }}function initIt(){ if (!ver4) return; if (NS4) { for (i=0; i<document.layers.length; i++) { whichEl = document.layers[i]; if (whichEl.id.indexOf("Child") != -1) whichEl.visibility = "hide"; } arrange(); } else { divColl = document.all.tags("DIV"); for (i=0; i<divColl.length; i++) { whichEl = divColl(i); if (whichEl.className == "child") whichEl.style.display = "none"; } }}function expandIt(el) { if (!ver4) return; if (IE4) { whichEl1 = eval(el + "Child"); for(i=1;i<=numTotal;i++){ whichEl = eval(scores[i] + "Child"); if(whichEl!=whichEl1) { whichEl.style.display = "none"; } } whichEl1 = eval(el + "Child"); if (whichEl1.style.display == "none") { whichEl1.style.display = "block"; } else { whichEl1.style.display = "none"; } } else { whichEl = eval("document." + el + "Child"); for(i=1;i<=numTotal;i++){ whichEl = eval("document." + scores[i] + "Child"); if(whichEl!=whichEl1) { whichEl.visibility = "hide"; } } if (whichEl.visibility == "hide") { whichEl.visibility = "show"; } else { whichEl.visibility = "hide"; } arrange(); }}onload = initIt;
    </script>
    <script language="JavaScript">
    <!--
    //该函数在调用过程中只需要在将要点击的单元格内的onclick事件中调用showme函数即可
    //function showme(obj1, obj2)该函数主要为使点击的对象高亮度显示,并调用moveme函数,参数obj1为母体即<div>标签的id,obj2为点击对象本身
    //function moveme(obj)该函数判断单元的移动,并调用相应的函数处理,obj参数为母体
    //function moveup(obj,objtop)该函数使一个单元向上移动,参数obj为母体,objtop为母体的本身最高高度
    //function movedown(obj,objbuttom)该函数使一个单元向下移动,参数obj为母体,objbuttom为母体的本身最低高度
    var headHeight = 22;//每个标题的高度
    var bodyHeight = 160;//母体高度
    var objcount = 6;//项目的个数,要改变了项目的个数别忘了该这个东西
    var step = 6;//移动速度(请确认可以被'bodyHeight-headHeight'整除,当前的设定可选速度为1,2,3,6,23,138)
    var moving = false;//是否有移动的项目
    function showme(obj1, obj2)
    {
    //以下循环为改变标题的背景颜色
    if (moving)
    return;
    moving = true;
    for(i=0;i<document.all.tags("td").length;i++)
    if (document.all.tags("td")[i].className.indexOf('headtd') == 0)
    document.all.tags("td")[i].className = 'headtd1';
    obj2.className = 'headtd2';
    moveme(obj1);
    }
    function moveme(obj)
    {
    idnumber = parseInt(obj.id.substr(4));
    objtop = headHeight * (idnumber - 1);
    objbuttom = bodyHeight + headHeight * (idnumber - 2);
    currenttop = parseInt(obj.style.top);
    if (currenttop >= objbuttom)
    {
    //检验出每一个应该向上移动的层
    countid = 1;
    for(i=0;i<document.all.tags("div").length;i++)
    if (document.all.tags("div")[i].id == 'item'+countid+'body')
    {
    obj = document.all.tags("div")[i];
    objtop = headHeight * (countid - 1);
    if (countid == idnumber)
    {
    moveup(obj,objtop,false);
    break;
    }
    else
    moveup(obj,objtop,true);
    countid++;
    }
    }
    else if ((currenttop <= objtop) && (idnumber < objcount))
    {
    //检验出每一个应该向下移动的层
    idnumber++;
    countid = objcount;
    for(i=document.all.tags("div").length-1;i>=0;i--)
    if (document.all.tags("div")[i].id == 'item'+countid+'body')
    {
    obj = document.all.tags("div")[i];
    objbuttom = bodyHeight + headHeight * (countid - 2);
    if (countid == idnumber)
    {
    movedown(obj,objbuttom,false);
    break;
    }
    else
    movedown(obj,objbuttom,true);
    countid--;
    }
    }
    }
    function moveup(obj,objtop,ismove)
    {
    currenttop = parseInt(obj.style.top);
    if (currenttop > objtop)
    {
    obj.style.top = currenttop - step;
    setTimeout('moveup('+obj.id+','+objtop+','+ismove+')',1)
    return;
    }
    moving = ismove;
    }
    function movedown(obj,objbuttom,ismove)
    {
    currenttop = parseInt(obj.style.top);
    if (currenttop < objbuttom)
    {
    obj.style.top = currenttop + step;
    setTimeout('movedown('+obj.id+','+objbuttom+','+ismove+')',1)
    return;
    }
    moving = ismove;
    }
    // -->
    </script>
    </head>
    <body>
    <!--改改这个div(mainboard)的height,加一个项目当然要把它的值加22了,减一个项目当然就是减22了//-->
    <div id="mainboard" style="position:absolute; left:2px; top:2px; 120px; height:270px; z-index:3; overflow: hidden; background: #0099FF;" onClick="">
    <div id="item1body" style="position:absolute; left:0; top:0; 120px; height:160px; z-index:1; overflow: hidden">
    <table width="100%" border="0" height="100%" cellpadding="2" cellspacing="0">
    <tr>
    <td id="item1head" height="20" class="headtd2" onClick="showme(item1body,this)">
    <div align="center">工作室</div>
    </td>
    </tr>
    <tr>
    <td class="bodytd">
    <div id='KB1Parent' >
    <a href="#" onClick="expandIt('KB1');">
    <IMG SRC='http://img.alixixi.com/icon_indextool.gif' BORDER=0>分类一</a></div>
    <div id='KB1Child' >
    <a href='time1.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0001</a>
    <a href='time2.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0002</a>
    <a href='time8.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0003</a>
    </div>
    <div id='KB2Parent' >
    <a href="#" onClick="expandIt('KB2');">
    <IMG SRC='http://img.alixixi.com/icon_indextool.gif' BORDER=0>分类二</a></div>
    <div id='KB2Child' class='child'>
    <a href='time1.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0001</a>
    <a href='time2.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0002</a>
    <a href='time8.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0003</a></div>
    <div id='KB3Parent' ><a href="#" onClick="expandIt('KB3');">
    <IMG SRC='http://img.alixixi.com/icon_indextool.gif' BORDER=0>分类三</a></div><div id='KB3Child' class='child'>
    <a href='time1.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0001</a>
    <a href='time2.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0002</a>
    <a href='time8.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0003</a></div>
    <div id='KB4Parent' ><a href="#" onClick="expandIt('KB4');">
    <IMG SRC='http://img.alixixi.com/icon_indextool.gif' BORDER=0>分类四</a></div><div id='KB4Child' class='child'>
    <a href='time1.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0001</a>
    <a href='time2.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0002</a>
    <a href='time8.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0003</a></div>
    <div id='KB5Parent' >
    <a href="#" onClick="expandIt('KB5'); return false">
    <IMG SRC='http://img.alixixi.com/icon_indextool.gif' BORDER=0>分类五</a></div><div id='KB5Child' class='child'>
    <a href='time1.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0001</a>
    <a href='time2.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0002</a>
    <a href='time8.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0003</a></div>
    <div id='KB6Parent' ><a href="#" onClick="expandIt('KB6'); return false">
    <IMG SRC='http://img.alixixi.com/icon_indextool.gif' BORDER=0>分类六</a></div><div id='KB6Child' class='child'>
    <a href='time1.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0001</a>
    <a href='time2.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0002</a>
    <a href='time8.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0003</a></div>
    </td>
    </tr>
    </table>
    </div>
    <div id="item2body" style="position:absolute; left:0px; top:160; 120; height:160; z-index:2; overflow: hidden">
    <table width="100%" border="0" height="100%" cellpadding="2" cellspacing="0">
    <tr>
    <td id="item2head" height="20" class="headtd1" onClick="showme(item2body,this)">
    <div align="center">邮箱</div>
    </td>
    </tr>
    <tr>
    <td class="bodytd">
    <div id='KB7Parent' >
    <a href="#" onClick="expandIt('KB7');">
    <IMG SRC='http://img.alixixi.com/icon_indextool.gif' BORDER=0>分类一</a></div>
    <div id='KB7Child' >
    <a href='time1.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0001</a>
    <a href='time2.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0002</a>
    <a href='time8.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0003</a>
    </div>
    <div id='KB8Parent' >
    <a href="#" onClick="expandIt('KB8');">
    <IMG SRC='http://img.alixixi.com/icon_indextool.gif' BORDER=0>分类二</a></div>
    <div id='KB8Child' class='child'>
    <a href='time1.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0001</a>
    <a href='time2.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0002</a>
    <a href='time8.htm' target='_target'> <IMG SRC='http://img.alixixi.com/li01.gif' BORDER=0>0003</a></div>
    <SCRIPT>
    numTotal=8;
    scores[1]='KB1';
    scores[2]='KB2';
    scores[3]='KB3';
    scores[4]='KB4';
    scores[5]='KB5';
    scores[6]='KB6';
    scores[7]='KB7';
    scores[8]='KB8'
    </SCRIPT>
    </td>
    </tr>
    </table>
    <p class="headtd1"> </p>
    </div>
    <div id="item3body" style="position:absolute; left:0; top:182; 120px; height:160; z-index:3">
    <table width="100%" border="0" height="100%" cellpadding="2" cellspacing="0">
    <tr>
    <td id="item3head" height="20" class="headtd1" onClick="showme(item3body,this)">
    <div align="center">Q Q</div>
    </td>
    </tr>
    <tr>
    <td class="bodytd">
    <div align="center">37146743</div>
    </td>
    </tr>
    </table>
    </div>
    <div id="item4body" style="position:absolute; left:0; top:204; 120px; height:160; z-index:4; overflow: hidden">
    <table width="100%" border="0" height="100%" cellpadding="2" cellspacing="0">
    <tr>
    <td id="item4head" height="20" class="headtd1" onClick="showme(item4body,this)">
    <div align="center">朋友</div>
    </td>
    </tr>
    <tr>
    <td class="bodytd">
    <div align="center">
    <p>小一、旁腾
    </p>
    </div>
    </td>
    </tr>
    </table>
    </div>
    <div id="item5body" style="position:absolute; left:0; top:226; 120px; height:160; z-index:4; overflow: hidden">
    <table width="100%" border="0" height="100%" cellpadding="2" cellspacing="0">
    <tr>
    <td id="item5head" height="20" class="headtd1" onClick="showme(item5body,this)">
    <div align="center">陌生人</div>
    </td>
    </tr>
    <tr>
    <td class="bodytd">
    <div align="center">
    <p>小虎
    AAP

    小伙伴
    小一</p>
    </div>
    </td>
    </tr>
    </table>
    </div>
    <!--如果要添加一个子项目请拷贝一份下面的代码并放于后面。干什么,不要拷贝我了,是下面的//-->
    <div id="item6body" style="position:absolute; left:0; top:248; 120px; height:160; z-index:4; overflow: hidden">
    <table width="100%" border="0" height="100%" cellpadding="2" cellspacing="0">
    <tr>
    <td id="item6head" height="20" class="headtd1" onClick="showme(item6body,this)">
    <div align="center">版本号</div>
    </td>
    </tr>
    <tr>
    <td class="bodytd">
    <div align="center">
    <p>版本号:1.1

    封锁了移动过
    程中的点击事件
    这样不会出现抖
    动现象了。
    </div>
    </td>
    </tr>
    </table>
    </div>
    <!--哎哎,别往下拷贝了,到我得上面为止了,拷贝到代码放到我后面吧
    哦,对了别忘了改几个id呀,div的id,td的id,还有onclick事件中的对象id
    id的规则是div中item+数字+body。td中item+数字+head
    还有div的style中的top值呀,是多少,上面这个div的top加上22就是了
    别忘了按照body下的提示改改mainboard的height呀。还有给教本中的objcount数量改为你现在项目的个数
    别傻了,快点行动吧,要不赶不上饭点了//-->
    </div>
    </body>
    </html>
     
  • 相关阅读:
    ubuntu:activate root
    C/C++ char* arr与char arr[]的区别(反汇编解析)
    [转]关于编写Nios II的延时函数的一点心得
    [转]Xilinx Vivado的使用详细介绍(1):创建工程、编写代码、行为仿真、Testbench
    [转]Vivado中IP的使用方法
    [转]Vivado IP核生成设置
    [转]VHDL中数据类型转换与移位(STD_LOGIC_ARITH与NUMERIC_STD)
    [转]Vivado与SDK的联合调试方法-使用ILA
    [转]Vivado中ILA的使用
    [转]vivado硬件调试——mark_debug
  • 原文地址:https://www.cnblogs.com/zerogo/p/2209221.html
Copyright © 2011-2022 走看看