javascript - 想防止下拉菜单默认打开
问题描述
在移动端视图(窗口大小小于 800 像素)中,下拉菜单现在默认打开并覆盖内容。我希望在单击切换按钮之前隐藏菜单。
网站:jweeklyusa.com
老实说,我可以写 html 和 css,但我对 javascript 了解不多。如果你能帮助我,我真的很感激。谢谢你。
/* Add Menu Toggle Button for mobile navigation */
$("#main-navigation").before('<button id=\"main-navigation-toggle\" class=\"main-navigation-toggle\"></button>');
/* Add dropdown slide animation for mobile devices */
$('#main-navigation-toggle').on('click', function(){
menu_wrap.slideToggle();
$( this ).toggleClass('active');
});
/* Add submenus for mobile navigation menu */
main_menu.addMobileSubmenu();
header_menu.addMobileSubmenu();
} );
<nav id="main-navigation" class="primary-navigation navigation clearfix" role="navigation">
<div class="main-navigation-menu-wrap">
<?php
// Display Main Navigation.
wp_nav_menu( array(
'theme_location' => 'primary',
'container' => false,
'menu_class' => 'main-navigation-menu',
'echo' => true,
'fallback_cb' => 'admiral_default_menu',
)
);
?>
</div><!-- main-navigation-menu-wrap -->
</nav><!-- #main-navigation -->
解决方案
在 slideToggle() 的 jQuery 文档中,它说“如果元素最初显示,它将被隐藏;如果隐藏,它将被显示。”
看起来您最初将 CSS 显示设置为“无”。最初尝试删除该属性。
推荐阅读
- c - 当我想获取初始化堆栈信息时的核心转储
- python - 在python中的字典中存储坐标
- python - 从python脚本在VSCode的第二个远程终端中运行shell命令的正确方法是什么
- excel - 有没有办法使用VBA合并excel中的相关单元格?
- .net - RabbitMQ .NET 客户端中奇怪的“无法解析 IP 地址”
- tomcat - 已部署的 Tomcat 应用程序加载旧的 SWF
- javascript - 如何根据javascript中按钮的data-id属性在警报中显示特定消息?
- type-conversion - WAV 音频文件的大小应该是音频缓冲区的两倍吗?
- untagged - 如何获取作业失败统计信息?
- javascript - Javascript 动画在 Safari 14 中无法正常工作