当前位置: 首页 » 综合知识 » it知识 » 正文

如何用JavaScript制作下拉菜单

发布时间:2023-07-29 以下文章来源于网友投稿,内容仅供参考!

JavaScript制作下拉菜单的方法:1、利用value属性获取下拉菜单的选项;2、根据选项决定div的状态;3、利用style.display样式隐藏或显示div即可。

本文操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

JavaScript如何制作下拉菜单?

js下拉菜单制作

一、用js通过下拉菜单来实现div的隐藏和显示

思路:利用value属性获取下拉菜单的选项→根据选项决定div的状态→利用style.display样式隐藏或显示div。实例演示如下:

代码

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>W3Cschool(w3cschool)</title>
</head>
<body>
  <select id="test_select">
    <option value="1">显示</option>
    <option value="2">隐藏</option>
  </select>
  <div id="test">我是一个div么呀我是一个div</div>
  <script>
    window.onload = function () {
      var obj_select = document.getElementById("test_select");
      var obj_div = document.getElementById("test");
      obj_select.onchange = function () {
        obj_div.style.display = this.value == 1 ? "block" : "none";
      }
    }
  </script>
</body>
</html>

效果演示

二、鼠标滑过出现下拉菜单的js做法

大致思路如下:先给菜单box定好宽高加上position:relative;再给里面的内容定上与之相同的宽高;然后给里面的下拉 二级菜单加上宽度绝对定位。

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>W3Cschool(w3cschool)</title>
  <style>
    * {
      margin: 0;
      padding: 0;
    }
    li {
      list-style-type: none;
    }
    a {
      text-decoration: none;
      font-size: 14px;
    }
    .nav {
      margin: 100px;
    }
    .nav>li {
      position: relative;
      float: left;
      width: 80px;
      height: 41px;
      text-align: center;
    }
    .nav li a {
      display: block;
      width: 100%;
      height: 100%;
      line-height: 41px;
      color: #333;
    }
    .nav>li>a:hover {
      background-color: #eee;
    }
    .nav ul {
      display: none;
      position: absolute;
      top: 41px;
      left: 0;
      width: 100%;
      border-left: 1px solid #FECC5B;
      border-right: 1px solid #FECC5B;
    }
    .nav ul li {
      border-bottom: 1px solid #FECC5B;
    }
    .nav ul li a:hover {
      background-color: #FFF5DA;
    }
  </style>
</head>
<body>
  <ul>
    <li>
      <a href="javascript:;">下拉</a>
      <ul>
        <li><a href="javascript:;">下拉1</a></li>
        <li><a href="javascript:;">下拉2</a></li>
        <li><a href="javascript:;">下拉3</a></li>
        <li><a href="javascript:;">下拉4</a></li>
      </ul>
    </li>
  </ul>
  <script>
    var lis = document.querySelector('.nav').children;
    for (var i = 0; i < lis.length; i++) {
      lis[i].onmouseover = function () {
        this.children[i].style.display = 'block';
      }
      lis[i].onmouseout = function () {
        this.children[i].style.display = 'none';
      }
    }
  </script>
</body>
</html>
  • • Linux Ecdsa密钥长度选择有何依据

    在Linux

  • • Linux Khook在内核监控中的应用如何

    Linux

  • • Linux Gsoap是否支持异步通信

    GSOAP是

  • • Linux Coremail如何提升用户体验

    提升Linu

  • • Linux Ecdsa算法有哪些局限性

    ECDSA

  • 哎呀音乐钢琴键盘学习《 钢琴主人训练营》 西瓜学琴
    郭蝈 陪练钢琴 30节课时 考级刚需 让孩子每一次练琴都是高质量的
    30天轻松学会五线谱 流行钢琴自学初级教程 牙牙学琴
    流行爵士钢琴实战技巧VIP课 - 继伟 哎呀音乐
    【海上钢琴师】原版 MT1990钢琴谱
    百首经典流行钢琴实战曲集 - 继伟
    雷费尔德电钢琴重锤88键专业考级儿童初学者数码电子钢琴家用
    小练咖 真人钢琴陪练 1v1服务 2999随时退 1课时50分钟 考级刚需
    雅马哈电钢琴88键重锤CLP735智能数码电子钢琴家用专业初学者考级
    【原装进口】Yamaha/雅马哈钢琴 b121 SC2原声静音钢琴
  • 珠海专业调钢琴
  • 天津宝坻区调钢琴
  • 天津静海区钢琴调音
  • 成都简阳市钢琴调律
  • 大连瓦房店市钢琴调音
  • 眉山调钢琴联系方式
  • 惠州大亚湾钢琴调琴师
  • 长治调琴师
  • 厦门湖里区钢琴调音师
  • 上海普陀区钢琴调音师