jQuery单击以显示/隐藏菜单,类似于桌面应用程序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery单击以显示/隐藏菜单,类似于桌面应用程序相关的知识,希望对你有一定的参考价值。

  1. $(document).ready(function() {
  2.  
  3. $('li ul').hide();
  4.  
  5. $('a.arrow').click(function(e) {
  6. e.preventDefault();
  7. $(this).find('+ ul').toggle();
  8. $(this).toggleClass('active');
  9.  
  10. s = $(this).parent().find('ul');
  11. $('a.arrow').parent().find('ul:visible').not(s).hide(0,function() {
  12. $(this).parent().find('a.arrow').removeClass('active');
  13. });
  14. // Wooo it works! Clicking a button hides the current open one and removes the 'active' class
  15. });
  16.  
  17.  
  18. $("a.arrow").mouseover(function(){ $(this).addClass('over')})
  19. .mouseout(function(){ $(this).removeClass('over')});
  20. // Hover class to be added or removed on hover. Don't need :hover css if using this
  21.  
  22.  
  23. $(document).click(function(event){
  24. var target = $(event.target);
  25. if (target.parents("body li").length == 0) {
  26. $("a.arrow").removeClass('active');
  27. $("a.arrow").parent().find("ul").hide();
  28. }
  29. event.stopPropagation();
  30. });
  31. // Hide all menus when clicking outside of them (i.e on the document)
  32.  
  33. });
  34.  

以上是关于jQuery单击以显示/隐藏菜单,类似于桌面应用程序的主要内容,如果未能解决你的问题,请参考以下文章

在 iPad 上单击“悬停”效果(类似于 SO)

jQuery:单击外部元素以“关闭”使用toggleClass出现的菜单

如何使用jQuery和CSS隐藏元素?

在 div 下拉菜单之外单击时隐藏,但未显示切换

为啥图标显示不出来?

单击触摸设备 (iPad/iPhone) 上的任意位置以隐藏由 .hover() 切换的下拉菜单