jQuery实例——下拉菜单

  • 当鼠标移入一级菜单,显示二级菜单,当鼠标移出时,不显示二级菜单
  • 在使用动画效果时,可以在动画执行之前,执行stop方法,停止之前执行的动画,避免上次执行的动画对当前执行动画的影响
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>下拉菜单</title>
  <style>
    * {
      margin: 0;
      padding: 0;
    }

    .nav {
      list-style: none;
      width: 300px;
      height: 50px;
      margin: 100px auto;
      background-color: bisque;
    }

    .nav > li {
      float: left;
      width: 100px;
      height: 50px;
      line-height: 50px;
      text-align: center;
    }

    .sub {
      list-style: none;
      background-color: aquamarine;
      display: none;
    }


  </style>
  <script src="./js/jquery-3.5.1.js"></script>
  <script>
    $(function () {
      // 监听一级菜单移入事件
      $(".nav>li").mouseenter(function () {
        // 获取二级菜单
        const $sub = $(this).children(".sub")
        // 停止之前运行的动画
        $sub.stop()
        // 下拉二级菜单
        $sub.slideDown(1000)
      })
      // 监听一级菜单移出事件
      $(".nav>li").mouseleave(function () {
        // 获取二级菜单
        const $sub = $(this).children(".sub")
        // 停止之前运行的动画
        $sub.stop()
        // 收起二级菜单
        $sub.slideUp(1000)
      })
    })
  </script>
</head>
<body>
<ul class="nav">
  <li>一级菜单
    <ul class="sub">
      <li>二级菜单</li>
      <li>二级菜单</li>
      <li>二级菜单</li>
      <li>二级菜单</li>
      <li>二级菜单</li>
    </ul>
  </li>
  <li>一级菜单
    <ul class="sub">
      <li>二级菜单</li>
      <li>二级菜单</li>
      <li>二级菜单</li>
      <li>二级菜单</li>
      <li>二级菜单</li>
    </ul>
  </li>
  <li>一级菜单
    <ul class="sub">
      <li>二级菜单</li>
      <li>二级菜单</li>
      <li>二级菜单</li>
      <li>二级菜单</li>
      <li>二级菜单</li>
    </ul>
  </li>

</ul>
</body>
</html>

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值