2015-04-22 81 views
0

我喜欢JRulle伟大代码:显示隐藏子菜单的onclick - JQuery的

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

任何人都可以解释我如何使用完整的家长联系,而不是为打开子菜单的形象呢? 而且只有一个子菜单显示在同一时间?

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

但箭头不会改变。

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

对不起,拼写错误,非常感谢您的帮助和来自德国的问候。

回答

2

您还需要将点击事件绑定到链接。那么,请改变这个

$('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(); 
    }); 
+2

但随后,箭不改变.. – Lal

+0

有应该只有一个子菜单打开 – Tushar

+0

@Lal感谢您的提升,它应该现在工作。 – renakre