javascript - 如何在手机上隐藏导航栏?
问题描述
这已经被问了一百万次了。我已经尝试了在这里找到的每一个解决方案,但没有一个对我有用。我有这个导航栏:
<div>
<nav class="navbar navbar-expand-lg bg-dark navbar-dark hidden-sm" id="navbar">
<ul class="navbar-nav" id="navToHide">
<li class="nav-item active">
<a class="nav-link" href="#quemsou" id="link1">Active</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#" id="link">Link</a>
</li>
<li class="nav-item">
<a class="nav-link" href="#" id="link">Link</a>
</li>
</ul>
<ul class="navbar-nav ml-auto">
<li class="nav-item">
<a class="" href="#" id="burguerDrop"><i class="fa fa-bars" style="font-size:40px; color:white;"></i></a>
</li>
</ul>
</nav>
</div>
而这个 jQuery/JS:
$(document).ready(function() {
if (document.documentElement.clientWidth > 480) {
$("#navbar").addClass("fixed-top");
$("#burguerDrop").hide();
} else {
$("#navbar").removeClass("fixed-top");
$("#navToHide").hide();
$("#burguerDrop").show();
}
});
无论如何,我都无法在手机上隐藏我的导航。我无法隐藏导航或导航链接。但我可以隐藏和展示我的“burguerDrop”。我的“buguerDrop”工作正常,但它没有显示在我的计算机网络浏览器上。但是,它在移动设备上显示的正是我想要的。
但在其他元素中,我不能这样做。我不知道为什么。我试过同时使用“ css('display', 'none');
”和“ hide();
”。它们都不能隐藏我的导航栏,但它们都可以显示我的burguerDrop
.
我完全不知道为什么会这样。
解决方案
既然您已经使用引导程序,为什么不简单地使用 css 断点。
.navToHide {
display: none;
}
@include media-breakpoint-up(sm) {
.navToHide {
display: block;
}
}
推荐阅读
- c++ - 在用户类中包含 pybind11 嵌入式模块的正确方法是什么(作为单例类的一部分)
- java - Kafka:如何重新使用未提交/未确认的消息
- powershell - Delete registry string that contains specific value
- c - 是否有防止用户在功能运行时输入的功能?
- php - IF 语句中的 "string" == $variable 和 $variable == "string" 有什么区别
- c# - How to find an element in the List from a specific index upto the end?
- linux - 使用 ssh 杀死远程服务器上的端口
- sql - 将数据库内容克隆到现有数据库中
- itext - pdfStamper.AcroFields.SetField 不保留外观设置
- excel - 从 Outlook 宏自动打开后无法调用 Excel 宏