响应式顶部导航菜单(Responsive Top Navigation Menu)点击失效求助
修复汉堡菜单点击无反应的问题
嘿,我仔细扒了你的代码,很快就找到了导致汉堡菜单点击失效的关键问题,咱们一步步来解决:
1. 最核心的错误:JavaScript文件引入方式不对
你在HTML里用<link>标签加载JS文件,这完全是用错标签了——<link>只能用来加载CSS这类样式文件,JavaScript必须用<script>标签引入。
原错误代码:
<link rel="javascript" href="script/javascript.js">
改成正确写法:
<script src="script/javascript.js"></script>
更稳妥的做法是把这个<script>标签放到<body>末尾(</body>标签之前),这样能确保页面DOM加载完成后再执行JS,避免出现找不到元素的问题,比如:
... </div> <script src="script/javascript.js"></script> </body> </html>
2. 其他没问题的细节(帮你确认过了)
- 你的
myFunction是全局声明的,点击事件能正常访问到它,这部分没毛病 - 导航栏的ID
myTopnav和JS里的getElementById完全匹配,能正确获取到目标元素 - CSS的媒体查询和
.responsive类的样式都是正确的,只要JS能正常切换这个类,菜单就能正常展开收起
测试验证
改完之后刷新页面,把浏览器窗口缩小到600px以下,点击汉堡图标,应该就能看到菜单正常展开和收起了。
内容的提问来源于stack exchange,提问作者Azazel
相关产品推荐
相关产品推荐

