【问题标题】:How to add a fade or slide effect to a sub menu ul如何向子菜单 ul 添加淡入淡出或滑动效果
【发布时间】:2015-11-30 12:31:56
【问题描述】:

我正在尝试将 Jquery 效果或 CSS 淡入/滑动添加到我的子菜单,但似乎无法使其正常工作。 ul sub nav 在我的 CSS 中设置为不显示。然后,当您单击带有类下拉切换的“a”标签时,它会在这个子 ul 中添加类“显示子菜单”(现在,在我的 CSS 中显示块)。我的代码如下;

HTML:

<ul class="nav-list">
    <li><a href="index.html">Home</a></li>
    <li>
        <a class="dropdown-toggle" title="About Us">About Us</a>
        <ul>
            <li><a href="about-us.html">About Our Business</a></li>
            <li><a href="meet-the-team.html">Meet The Team</a></li>
        </ul>
    </li>
</ul>

我的jquery如下:

$('a.dropdown-toggle').click(function(e) {
    $(this).next().toggleClass('display-sub-menu', 250);
}); 

目前这只是隐藏和显示。如果我使用 slideToggle 等,则没有幻灯片的效果

【问题讨论】:

    标签: jquery css


    【解决方案1】:

    您可以使用.fadeToggle()/.slideToggle() 来切换淡入淡出/滑动来代替切换类

    这两种方法都以持续时间作为参数,你可以传递 250 作为参数:

    $('a.dropdown-toggle').click(function (e) {
        $(this).next().fadeToggle(250);
    });
    

    $('a.dropdown-toggle').click(function (e) {
        $(this).next().slideToggle(250);
    });
    

    Working Demo

    【讨论】:

    • 这很好,非常感谢您的帮助。然而,得到一个非常跳跃的效果。它逐渐淡入淡出,但是在淡入淡出完成后我会迅速崩溃?谢谢:)
    • @AlySebastien:您可以根据需要修改持续时间参数。
    • 是的,滑动切换应该很容易,但由于某种原因在我的项目中没有滑动。 (虽然在演示链接中很好)
    • 是否还有其他脚本会影响这些元素?如果您可以在小提琴中重现问题,那就太好了。
    • 其他地方一定有一个 gremlin,当我使用 slideToggle 时它的行为就像这样w3schools.com/jquery/tryit.asp?filename=tryjquery_eff_show_hide(没有幻灯片只是打开/关闭)
    猜你喜欢
    • 1970-01-01
    • 2016-04-17
    • 1970-01-01
    • 1970-01-01
    • 2011-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多