在JavaScript中实现当前导航菜单的高亮显示,通常涉及到以下几个基础概念:
window.location.href
获取当前页面的完整URL。以下是一个简单的示例,展示了如何实现这一功能:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Navigation Highlight</title>
<style>
.nav-item {
padding: 10px;
margin: 5px;
border: 1px solid #ccc;
}
.active {
background-color: #4CAF50;
color: white;
}
</style>
</head>
<body>
<ul class="nav">
<li class="nav-item"><a href="/home">Home</a></li>
<li class="nav-item"><a href="/about">About</a></li>
<li class="nav-item"><a href="/contact">Contact</a></li>
</ul>
<script>
document.addEventListener('DOMContentLoaded', function() {
const navItems = document.querySelectorAll('.nav-item');
const currentPath = window.location.pathname;
navItems.forEach(item => {
const link = item.querySelector('a').getAttribute('href');
if (link === currentPath) {
item.classList.add('active');
}
});
});
</script>
</body>
</html>
.nav-item
用于基本样式,.active
用于高亮显示。DOMContentLoaded
事件确保DOM完全加载后再执行脚本。.active
类以实现高亮效果。通过以上方法,可以有效地实现导航菜单的高亮显示功能,并确保其在不同场景下的正确性和稳定性。
领取专属 10元无门槛券
手把手带您无忧上云