javascript - 下拉列表多次保持上下滑动

标签 javascript jquery

jQuery 下拉列表多次保持上下滑动

HTML:

<nav class="main-nav">
    <img src="img/logo.jpg"> 
    <ul class="nav-list">
        <li><a href="#">Home Page</a></li>
        <li><a href="#">About us</a></li>
        <li><a href="#">Products</a>
            <ul class="dropdown">
                <li><a href="#"> Product 1</a></li>
                <li><a href="#"> product 2</a></li>
                <li><a href="#">product 3</a></li>
                <li><a href="#">Product 4</a></li>
                <li><a href="#">product 5</a></li>
                <li><a href="#">product 6</a></li>
            </ul>
        </li>
        <li><a href="#">Career</a></li>
        <li><a href="#">Contact us</a></li>
    </ul>
</nav>

JavaScript:

$(function () {
    $("li").has(".dropdown").hover(
        function () {
            $(this).find(".dropdown").slideDown();
        },
        function () {
            $(this).find(".dropdown").slideUp();
        }
    );
});

最佳答案

当您快速连续多次将鼠标悬停在 Products 项上时,slideDown 和 slideUp 动画会排队。调用stop()在执行新的 slideDown 或 slideUp 之前取消当前动画:

$("li").has(".dropdown").hover(
    function () {
        $(this).find(".dropdown").stop().slideDown();
    },
    function () {
        $(this).find(".dropdown").stop().slideUp();
    }
);

关于javascript - 下拉列表多次保持上下滑动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36866956/

相关文章:

javascript - 检测复选框被点击的顺序

javascript - Stripe JS 使 token 无效/销毁?

javascript - Chrome : Unexpected identifier , Firefox: missing ] after element list

javascript - 试图让大写小写 jquery 代码工作

javascript - 将 js 变量打印到另一个 js 文件中的 innerHTML 调用中

jquery - 将 Webpack 用于简单站点

Javascript从两个对象数组生成矩阵

javascript - 过滤输入字段中的数据。 Javascript数组比较?

jquery - 表单验证

javascript - 单击时水平播放幻灯片动画