代码之家  ›  专栏  ›  技术社区  ›  Steve

如何将show()和hide()jquery函数应用于css显示属性

  •  0
  • Steve  · 技术社区  · 8 年前

    我有我的项目的副菜单。我没有使用引导模板。为了学习,我正在开发自己的副菜单。

    现在要显示和隐藏菜单,我使用jquery hide() show() 功能。

    但这样做会使菜单在隐藏或显示时看起来有点奇怪。 例如,您可以看到这把小提琴(故意将延迟设置为2s,以便您可以观察到奇怪的变化)。 https://jsfiddle.net/6v25oggm/3/

    有人能帮我吗。?

    3 回复  |  直到 8 年前
        1
  •  4
  •   tigerdi    8 年前

    您的代码可以通过使用 slideToggle 以及一些简单的逻辑,用于检查 a 旁边有一个子菜单。

    请查看这把小提琴: https://jsfiddle.net/vxaoryg3/2/

        2
  •  2
  •   user4676340 user4676340    8 年前

    您应该使用 slideUp slideDown .

    slide 函数仅影响元素的高度 show/hide 函数影响高度和宽度。

    看见 this fiddle 正在运行

        3
  •  1
  •   CME64    8 年前

    使用 提格尔迪 的建议(&A); 特里谢里奇 的解决方案(实施)

    已更新

    $('.sidebar-menu li').click(function(e) 
    {
        e.stopPropagation();
        $(this).siblings().find('.sidebar-sub-menu').slideUp();
        $(this).find('.sidebar-sub-menu').slideToggle();
    });