本文提供一段纯JavaScript实现的点击向下展开下拉菜单代码,不依赖jQuery。内容包含HTML结构、CSS样式及JS逻辑,旨在为开发者提供基础参考。由于兼容性未做全面测试,建议在实际使用前进行修正与验证。
纯JavaScript下拉菜单实现
本文分享一段使用JavaScript实现的点击向下展开式下拉菜单代码,供读者参考学习。
该示例采用原生JavaScript编写,未调用jQuery库,属于真正的JS下拉菜单实现。代码兼容性未经过全面测试,如有需要,请自行测试并根据实际情况进行修正。本文仅展示基础代码供参考。
运行效果如下图所示:

在线演示地址如下:
http://demo.jb51.net/js/2015/js-click-show-down-menu-style-codes/
具体代码实现如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>下拉菜单</title>
<style type="text/css">
*{margin:0; padding:0}
#nav{width:200px; margin:50px}
#nav h3{ cursor:pointer; line-height:30px; height:30px; background-color:#000000; color:#fff}
#nav a{display:block; line-height:24px;color:#666666}
#nav a:hover{background-color:#eee; color:#000;}
#nav div{display:none; border:1px solid #000; border-top:none}
</style>
<script type="text/javascript">
function $(id){return document.getElementById(id)}
window.onload = function(){
$("nav").onclick = function(e){
var src = e?e.target:event.srcElement;
if(src.tagName == "H3"){
var next = src.nextElementSibling || src.nextSibling;
next.style.display = (next.style.display =="block")?"none":"block";
}
}
}
</script>
</head>
<body>
<div id="nav">
<h3>管理区</h3>
<div>
<a href="#">建议</a>
<a href="#">链接</a>
<a href="#">联系</a>
</div>
<h3>交流区</h3>
<div>
<a href="#">JavaScript</a>
<a href="#">Delphi</a>
<a href="#">VC++</a>
</div>
</div>
</body>
</html>
希望本文提供的代码对您的JavaScript程序设计有所帮助。