因为代码量比较多,所有只能分步骤的贴上来,详情请见:http://topic.csdn.net/u/20081127/17/e20cf65d-46fc-435d-9a5c-0fed4d9681f2.html
你们可以将每个楼上的(qliujun07是我)的代码拷下来组成一个html文件保存,然后你们可以运行看看,
然后针对我的问题帮帮我如何解决,很急用...!谢谢。

解决方案 »

  1.   

    我有看到你用到了
    eval("msub"+j)
    可是如果你把msub1删除掉.
    当j=1的时候上面那句话就得不到结果的.
    自然就运行不出来结果了.试试用
    var obj = null;
    try{
      if(eval("msub"+j) != null){
        obj = eval("msub"+j)
      }else{
        return;
      }
    }catch(){
      return;
    }
    if(obj.items[i].target=="blank")
      .......大概就是上面这个样子.可是你用了很多eval,
      

  2.   

    刚刚,试着改了改。
    不过代码实在是关连的地方太多。
    改好它花费的代价要高于重做一个。
    给你提供一个简单的解决方案吧。1.追加如下函数。
    function getMsubID(){
    var i=1;
    while(window["msub"+i]){
    i++
    }
    return(i);
    }            
    2.追加子菜单的代码修改如下。
    var msub = new mMenuItem('技术交流22', '', 'self', false, '', '1', '', '', '', '');
    msub.addsubItem(new mMenuItem(' 菜鸟天堂22', '/bbs/list.asp?boardid=7', 'self', false, '讨论网络技术,关注网络安全。网络的加油站。', null, '', '', '', ''));
    msub.addsubItem(new mMenuItem(' 网络技术和安全22', '/bbs/list.asp?boardid=8', 'self', false, '讨论网络技术,关注网络安全。网络的加油站。', null, '', '', '', ''));
    msub.addsubItem(new mMenuItem(' 编程爱好者论坛22', '/bbs/list.asp?boardid=9', 'self', false, '各种编程语言、多媒体知识的交流园地', null, '', '', '', ''));
    msub.addsubItem(new mMenuItem(' 硬件讨论区22', '/bbs/list.asp?boardid=10', 'self', false, '讨论有关计算机硬件的论坛。', null, '', '', '', ''));
    msub.addsubItem(new mMenuItem(' 新硬件大看台22', '/bbs/list.asp?boardid=15', 'self', false, ',新,精——只介绍讨论最新最酷的硬件产品', null, '', '', '', ''));
    mpmenu1.addItem(msub);
    window["msub" + getMsubID()] = msub;
      

  3.   

    还是像下面这样做要好一些。1. 追加函数appendMsub
    function appendMsub(obj){
        var i = 1;
        while (window["msub" + i]) {
            i++
        }
        window["msub" + i] = obj;
    }2. 追加子菜单的代码变更如下.
    (function createMenu(){
        mpmenu1 = new mMenu('平台首页', '/', 'self', '', '', '', '');
        mpmenu1.addItem(new mMenuItem(' 用户注册', '/register.asp', 'self', false, '用户注册', null, '', '', '', ''));
        mpmenu1.addItem(new mMenuItem(' 用户登录', '/login.asp', 'self', false, '用户登录', null, '', '', '', ''));
        mpmenu1.addItem(new mMenuItem(' 用户退出', '/login.asp?action=logout', 'self', false, '用户退出', null, '', '', '', ''));
        mpmenu1.addItem(new mMenuItem(' 资料修改', '/bbs/MYMODIFY.ASP', 'self', false, '', null, '', '', '', ''));
        
        
        var msub = new mMenuItem('技术交流22', '', 'self', false, '', '1', '', '', '', '');
        msub.addsubItem(new mMenuItem(' 菜鸟天堂22', '/bbs/list.asp?boardid=7', 'self', false, '讨论网络技术,关注网络安全。网络的加油站。', null, '', '', '', ''));
        msub.addsubItem(new mMenuItem(' 网络技术和安全22', '/bbs/list.asp?boardid=8', 'self', false, '讨论网络技术,关注网络安全。网络的加油站。', null, '', '', '', ''));
        msub.addsubItem(new mMenuItem(' 编程爱好者论坛22', '/bbs/list.asp?boardid=9', 'self', false, '各种编程语言、多媒体知识的交流园地', null, '', '', '', ''));
        msub.addsubItem(new mMenuItem(' 硬件讨论区22', '/bbs/list.asp?boardid=10', 'self', false, '讨论有关计算机硬件的论坛。', null, '', '', '', ''));
        msub.addsubItem(new mMenuItem(' 新硬件大看台22', '/bbs/list.asp?boardid=15', 'self', false, ',新,精——只介绍讨论最新最酷的硬件产品', null, '', '', '', ''));
        mpmenu1.addItem(msub);
        appendMsub(msub);
        
        mpmenu9 = new mMenu('站点服务', '', 'self', '', '', '', '');
        mpmenu9.addItem(new mMenuItem(' 免费邮箱', '/WebMail/', 'self', false, '', null, '', '', '', ''));
        mpmenu9.addItem(new mMenuItem(' 免费留言簿', '/GuestBook/', 'self', false, '', null, '', '', '', ''));
    })();
    请注意 var msub一定要加上var.