我喜欢JRulle的出色代码:

http://jsfiddle.net/jrulle/23kfnbx7/3/

谁能解释我如何使用完整的父链接而不是图像来打开子菜单?
并且只有一个子菜单同时显示?

我试图意识到这一点,但是我所得到的只是
-通过单击链接显示子菜单

但箭头不变。

    $('li.parent').on("click",function(){
       $(this).children('a').siblings('ul.children').slideToggle();
    });


抱歉拼写错误,非常感谢您的帮助和德国的问候。

最佳答案

您还需要将click事件绑定到链接。所以,请改变这个

$('li.parent').on("click",

对此

$('.parent img, .parent a').on("click",

这是一个演示:https://jsfiddle.net/23kfnbx7/8/

    $('.parent img, .parent a').on("click", function () {
        var img = $(this);
        if ($(this).next('img').length) {
            var img = $(this).next('img');
        }
        if (img.hasClass('open')) {
            img.removeClass('open');
            img.attr('src', 'http://upload.wikimedia.org/wikipedia/commons/f/f7/Arrow-down-navmenu.png');
        } else {
            img.addClass('open');
            img.attr('src', 'http://upload.wikimedia.org/wikipedia/commons/0/01/Arrow-up-navmenu.png');
        }
       img.siblings('ul.children').toggle();
    });

关于jquery - 显示隐藏的子菜单onclick-JQuery,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29802818/

10-11 22:31
查看更多