[Quote=引用 13 楼 mengxj85 的回复:]
Mark
[/Quot

解决方案 »

  1.   

    1。怎么实现延迟消失(比如说2秒后菜单消失)?  如下,修改wfmenu.js.function _check_menu(){
    try{
     var checked = false;
     var divs = document.all.tags("div");
     for(i=0;i<divs.length;i++){
       var ids = divs[i].id;
       if(ids.substr(ids.length-12) == '_SUBMENUDIV1' && ids.substr(0,1) == '_'){
         if(isChild(event.srcElement,divs[i])){
           checked = true;
         }
       }
     }
     if(!checked && !isChild(event.srcElement,_menudiv1)) {
     
      setTimeout( function(){
       var divarray = new Array();
       var k = 0;
       document.all['_menudiv1'].style.display = 'none';
       for(i=0;i<divs.length;i++){
         var ids = divs[i].id;
         if(ids.substr(ids.length-12) == '_SUBMENUDIV1' && ids.substr(0,1) == '_'){
           divarray[k] = divs[i];
           k++;
         }
       }
       for(i=0;i<k;i++){
         document.body.removeChild(divarray[i]);
       } 
       } ,2000);  //<--停留时间
     }
    }catch(e){
    //alert(e);

    }
      

  2.   

    3。怎么实现增加完带有子菜单的后再一次增加不带子菜单的菜单,或者说,
    例子中带有子菜单的项目都在菜单的最下面。我想不让他在菜单的最下面。说实话,这个菜单做得并不是很好.
    这个功能设计的有问题.
    简单对应的话像下面这样就可以实现.//准备菜单树数组对象,请修改该处代码,或通过程序循环生成动态菜单var selNode1;appendNode('null','89','产品管理','lb_34.gif','group');
    appendLeaf('ST_CKGL','出库管理','defaultmodel.gif');selNode1 = selNode;
    //第二层菜单
    appendNode('89','90','子项管理','lb_82.gif','group');
    appendLeaf('HR_DDGL','调动管理','defaultmodel.gif');
    appendLeaf('AT_FYDJ','费用管理','defaultmodel.gif');
    selNode = selNode1;
    appendLeaf('CRM_CPGL','产品管理','defaultmodel.gif');
    //第三层菜单
    appendNode('90','91','物资管理','lb_82.gif','group');
    appendLeaf('HR_DDGL3','入库管理','defaultmodel.gif');
    appendLeaf('AT_FYDJ3','库存管理','defaultmodel.gif');
    appendNode('null','88','车辆管理','defaultmodel.gif','group');
    appendLeaf('AT_CLXX','车辆信息','defaultmodel.gif');
    appendLeaf('AT_CLTJ','车辆统计','defaultmodel.gif');
    appendLeaf('ST_QSRK','期初入库','defaultmodel.gif');appendNode('null','86','关系管理','From.gif','group');
    appendLeaf('ST_KCCK','仓库管理','creat.gif');appendNode('null',othersystem,'','defaultsystem.gif','group');
    appendNode(othersystem,'BASESYSTEM','综合管理平台','defaultsystem.gif','system');
    appendNode(othersystem,'USERDATA','财务分析系统','up.jpg','system');
      

  3.   

    解释一下,
    设置一个临时变量selNode1保存当前选定菜单节点.
    添加完子菜单之后再恢复现场.
      

  4.   

    2。顶级菜单变底色?和子菜单一样变底色,并且,顶级菜单底色要保留住。
    看看是不是下面这样的效果.
    下面是 menubar.html中修改及追加部分的代码.
    追加了函数 setSelect;
    在onmouseove的showMenu之前追加了setSelect(this);调用.
    <script language="javascript">
    function setSelect(obj){
       for(var i =0;i<tt.length;i++){
          if(tt[i]==obj){
             tt[i].style.background="#dfdfdf";
          }else{
             tt[i].style.background="#ffffff";
          }
       }
    } <body style="margin:0pt;padding:0pt" class="nodetree">
    </script>
    <table class='SilverGray' cellpadding='0' cellspacing='0' width='100%'>
    <tr height=24>
    <!--请改写以下代码,或通过动态循环产生动态菜单-->  <td  id="tt" onMouseOver='setSelect(this);showMenu("89",getIEPosX(this),0)' class='menu'>
        <table id="ww"><tr>
        <td><img src='image/menu/items/lb_34.gif'/></td>
        <td nowrap valign='bottom' class="menu1">&nbsp;产品管理&nbsp;&nbsp;</td>
        </tr></table>
      </td>  <td  id="tt" onMouseOver='setSelect(this);showMenu("88",getIEPosX(this),0)' class='menu'>
        <table id="ww"><tr>
        <td><img src='image/menu/items/defaultmodel.gif'/></td>
        <td nowrap valign='bottom' class="menu1">&nbsp;车辆管理&nbsp;&nbsp;</td>
        </tr></table>
      </td>  <td  id="tt" onMouseOver='setSelect(this);showMenu("86",getIEPosX(this),0)' class='menu'>
        <table id="ww"><tr>
        <td><img src='image/menu/items/From.gif'/></td>
        <td nowrap valign='bottom' class="menu1">&nbsp;关系管理&nbsp;&nbsp;</td>
        </tr></table>
      </td><!--  END  --><td style='width:100%;' nowrap>&nbsp;</td><!--放置在右侧的菜单,可以用于特定功能,可以去除-->
    <td nowrap align=right  onMouseOver='showMenu(othersystem,getIEPosX(this),0)'>
        <table id="ww"><tr>
        <td><img src='image/menu/items/ok.jpg'/></td>
        <td nowrap valign='bottom' class="menu">&nbsp;支持运行系统&nbsp;&nbsp;</td>
        </tr></table>
    </td></tr>
    </table>
      

  5.   

    2。顶级菜单变底色?和子菜单一样变底色,并且,顶级菜单底色要保留住。  这句话的意思是-->顶级菜单就是"产品管理,车辆管理,关系管理" 
    子菜单就是鼠标划过顶级菜单时候出现的菜单. 
    鼠标划过子菜单时候,子菜单背景色改变,鼠标划过顶级菜单的时候,顶级菜单没有变色. 
    鼠标停在子菜单(产品管理-->子项管理-->物资管理-->入库管理)入库管理上. 
    你会发现(子项管理-->物资管理-->入库管理)背景色改变并且保持住了. 
    我想要的是(产品管理-->子项管理-->物资管理-->入库管理)背景色改变并且保持住. 顶级菜单的背景图片可以不要.
      

  6.   

    up
    为我在CSDN看到的最多分的帖子,再up一下……