jQuery树形菜单是一种常见的用户界面元素,用于展示层次结构的数据。下面是一个简单的jQuery树形菜单代码示例,包括HTML结构、CSS样式和JavaScript/jQuery代码。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>jQuery Tree Menu</title>
<link rel="stylesheet" href="styles.css">
</head>
<body>
<ul class="tree">
<li>
<span class="caret">Parent Node 1</span>
<ul class="nested">
<li>Child Node 1</li>
<li>Child Node 2</li>
</ul>
</li>
<li>
<span class="caret">Parent Node 2</span>
<ul class="nested">
<li>Child Node 3</li>
<li>Child Node 4</li>
</ul>
</li>
</ul>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script src="script.js"></script>
</body>
</html>
/* styles.css */
.tree {
list-style-type: none;
padding-left: 20px;
}
.caret {
cursor: pointer;
user-select: none;
}
.caret::before {
content: "\25B6";
color: black;
margin-right: 6px;
}
.caret-down::before {
transform: rotate(90deg);
}
.nested {
display: none;
}
.active {
display: block;
}
// script.js
$(document).ready(function() {
$('.caret').click(function() {
$(this).toggleClass('caret-down');
$(this).next('.nested').toggleClass('active');
});
});
<ul>
和<li>
元素来表示树形结构。每个父节点包含一个<span>
元素用于展开和折叠子节点。.tree
:移除默认的列表样式。.caret
:设置展开/折叠按钮的样式。.caret-down::before
:旋转展开按钮以表示折叠状态。.nested
:默认隐藏子节点。.active
:显示当前展开的子节点。.caret
元素时,切换caret-down
类以改变展开按钮的图标。.nested
元素的active
类以显示或隐藏子节点。.nested
类的初始状态为display: none;
。.active
类。.caret
元素被正确选中。通过以上步骤,你可以创建一个简单的jQuery树形菜单,并根据需要进行扩展和定制。
领取专属 10元无门槛券
手把手带您无忧上云