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>
     
  • 相关阅读:
    那些离不开的 Chrome 扩展插件
    Spring Boot 实战 —— 入门
    Maven 学习笔记
    Linux lvm 分区知识笔记
    Linux 双向 SSH 免密登录
    CentOS Yum 源搭建
    Ubuntu 系统学习
    iOS 测试三方 KIF 的那些事
    Swift 网络请求数据与解析
    iOS Plist 文件的 增 删 改
  • 原文地址:https://www.cnblogs.com/zerogo/p/2209221.html
Copyright © 2011-2022 走看看