PHP 折叠菜单是一种常见的网页交互元素,它允许用户通过点击或悬停来展开或折叠菜单项。这种菜单通常用于导航栏,以节省空间并提高用户体验。
以下是一个简单的 PHP 折叠菜单的示例代码:
<?php
$menuItems = [
['name' => 'Home', 'url' => 'index.php'],
['name' => 'About', 'url' => 'about.php', 'children' => [
['name' => 'Team', 'url' => 'team.php'],
['name' => 'History', 'url' => 'history.php']
]],
['name' => 'Services', 'url' => 'services.php', 'children' => [
['name' => 'Web Development', 'url' => 'web-dev.php'],
['name' => 'Mobile Development', 'url' => 'mobile-dev.php']
]]
];
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>PHP 折叠菜单</title>
<style>
.menu-item {
cursor: pointer;
}
.sub-menu {
display: none;
}
</style>
</head>
<body>
<ul>
<?php foreach ($menuItems as $item): ?>
<li class="menu-item" onclick="toggleSubMenu(this)">
<a href="<?php echo $item['url']; ?>"><?php echo $item['name']; ?></a>
<?php if (isset($item['children'])): ?>
<ul class="sub-menu">
<?php foreach ($item['children'] as $child): ?>
<li><a href="<?php echo $child['url']; ?>"><?php echo $child['name']; ?></a></li>
<?php endforeach; ?>
</ul>
<?php endif; ?>
</li>
<?php endforeach; ?>
</ul>
<script>
function toggleSubMenu(element) {
var subMenu = element.querySelector('.sub-menu');
if (subMenu) {
subMenu.style.display = subMenu.style.display === 'block' ? 'none' : 'block';
}
}
</script>
</body>
</html>toggleSubMenu 是否正确绑定到菜单项,并确保 CSS 样式 .sub-menu 的 display 属性设置正确。$item['url'] 或 $child['url'] 未正确设置。$menuItems 中的 URL 是否正确,并确保它们指向有效的页面。通过以上示例代码和解决方案,你应该能够实现一个基本的 PHP 折叠菜单,并解决常见的相关问题。