最近刚做了个网站,左侧二级导航菜单想实现动态展开效果,鼠标点击时展开子栏目,现在的问题是当我点击展开的某个子栏目时,打开新的页面时,展开的栏目自动关闭了,还得重新点击展开,显得有些麻烦,所以我想让已展开的栏目,当点击子栏目页时默认是展开的,不知这样的代码怎么写?应该用js能实现,但就是不知怎么写才能实现,望高手多多指点,最好有参考代码或是参考网站之类。谢谢!!!我的网站是:bj.181it.com/lpzlg    左侧栏目是从数据库中调出来的  

解决方案 »

  1.   

    这个站是你做的么....明明写了自动展开的代码的....只是少了点东西把以下这些代码写在window.onload = function(){}里面应该就行了,具体没看...
    var tmpArr,QueryString;
    var URL = document.location.toString();
    if(URL.lastIndexOf("?")!=-1){
    QueryString= URL.substring(URL.lastIndexOf("?")+1,URL.length);
    tmpArr=QueryString.split("&");
    for (i=0;i<=tmpArr.length;i++)
    { try{eval (tmpArr[i]);}
    catch (e){
    var re = new RegExp("(.*)=(.*)","ig");
    re.exec(tmpArr[i]);
    try{eval (RegExp.$1+"="+"\""+RegExp.$2+"\"");}
    catch(e){}
    }
    }
    }
    else
    {
    QueryString="";
    }if (typeof(id1)!="undefined")
    {
    var curr_id=id1;
    }
    if (typeof(id2)!="undefined")
    {
    var total_num=id2;
    }
    var curr_id=curr_id;
    var total_num=total_num;
    switchMenu(curr_id, total_num);
      

  2.   

    太感谢1楼了,问题终于解决了!!不过又发现个新问题哦,就是我把这部分代码单独放到一个页面测试时,不加 window.onload = function(){ } ,传递相应的参数却能展开,一旦放到网站上就不行了,只有放到window.onload = function(){ }中才行,测试是在静态页面中执行的;问题是:在单独的静态页面中与动态网站中有什么区别呢?这又是何故?为什么一个执行一个不执行?
      

  3.   

    放到window.onload里面是指在页面加载完后执行,你放到网站上以后可能页面还没有加载完这段代码就已经执行了,等页面加载完后就看不到自动展开的效果了