下拉菜单当前页面

时间:2013-06-04 08:08:01

标签: jquery

我有下拉菜单,到目前为止我做了类似的事情

$(function() {
    // hide all the sub-menus
    $("span.toggle").next().hide();
    $(".current").parents("li ul").show();

    // add a link nudging animation effect to each link
    $("#jQ-menu a, #jQ-menu span.toggle").hover(function() {
        $(this).stop().animate( {
            //paddingLeft:"10px",
            color:"black"
        }, 300);
    }, function() {
        $(this).stop().animate( {
            paddingLeft:"0",
            color:"#808080"
        }, 300);
    });

    // set the cursor of the toggling span elements
    $("span.toggle").css("cursor", "pointer");

    // prepend a plus sign to signify that the sub-menus aren't expanded
    $("span.toggle").prepend("+ ");
    // add a click function that toggles the sub-menu when the corresponding
    // span element is clicked
      $("span.toggle").click(function() {

            $(this).next().toggle(1000);
                // switch the plus to a minus sign or vice-versa
                var v = $(this).html().substring( 0, 1 );
                if ( v == "+" ){
                    $(this).html( "-" + $(this).html().substring( 1 ) );
                    var li = $(this).parent().siblings('li');
                    $('span.toggle', li).each(function(){
                        var v = $(this).html().substring( 0, 1 );
                        if ( v == "-" ){
                        $(this).html( "+" + $(this).html().substring( 1 ) );
                        $(this).next().toggle(1000);
                        }
                    });
                } else if ( v == "-" )
                    $(this).html( "+" + $(this).html().substring( 1 ) );
        });
    });

我想在当前页面上展开菜单。现在它是,但“+”在展开时被替换为“ - ”(它应该是“ - ”)当两者(“Pierwsze”和“Drugie”)都被扩展时,当我关闭“Pierwsze”时,那么“吸毒“正在关闭。但是,当我两个都关闭,我点击“Drugie”扩大,然后“Pierwsze”也在扩大。按照我想要的方式当“pierwsze”ius扩展然后我点击“Drugie”然后“Pierwsze”应该关闭。 对不起我的英语不好。我希望我能正确描述它。我不知道该怎么做下拉菜单才能正常工作。 这是链接http://jsbin.com/amofoz/11/edit

1 个答案:

答案 0 :(得分:0)

看看这里:http://jsbin.com/amofoz/27/

我改变了这个:

 $('span.toggle', li).each(function(){

到此:

$(this).find('span.toggle', li).each(function(){

希望有所帮助