1

我对 javascript/jquery 很陌生,我刚刚构建了一个简单的幻灯片菜单。

它有 3 个菜单,每个菜单都有一个子菜单……一切正常,我只是想知道是否有更好的方法来完成相同的任务。

这是我的js代码:

function menuOpen(menu){
    if(menu=='menu1'){
        $("#sub2").slideUp(400);
        $("#sub3").slideUp(400);
        $("#sub1").slideToggle(400);
    }else if(menu=='menu2'){
        $("#sub1").slideUp(400);
        $("#sub3").slideUp(400);
        $("#sub2").slideToggle(400);
    }else if(menu=='menu3'){
        $("#sub1").slideUp(400);
        $("#sub2").slideUp(400);
        $("#sub3").slideToggle(300);
    }
}
4

1 回答 1

1

没有看到你的 HTML

现场演示

function menuOpen(menu){      
    var num = menu.match( /\d+/ ); // Regex expression to retrieve the Number                 
    $('[id^=sub]').slideUp();      // slide UP all ID starting with sub
    $('#sub'+num).slideToggle();   // get the desired ID :)  
}

使用 jQuery 意味着我们想要轻松地操作 DOM 元素,这意味着如果没有看到您即将定位的 DOM 节点和结构的 HTML 示例,就很难使上面的操作更加简单

于 2013-07-17T22:41:24.373 回答