0
我正在使用Bootstrap 3構建網站,特別是導航摺疊功能。我有它的工作,以便在小屏幕上主導航崩潰,然後顯示在較大的屏幕上。基於屏幕大小切換導航
我遇到的問題是標題固定在大屏幕上,並且我被要求使主導航系統默認摺疊,並且當用戶在標題中的任何位置懸停或點擊(對於較大的手持設備)時出現。我已經通過檢查窗口大小並相應地隱藏導航來實現這一點。
我遇到的麻煩是當窗口調整大小時,它可以使導航打開和關閉多次。另外,我不希望此腳本在小屏幕上工作,因爲它使用Bootstraps摺疊功能。
這是我的。
HTML:
<header class="navbar-fixed-top" id="header">
<div class="top">
<div class="logo">
Logo here
</div>
</div>
<nav class="navbar navbar-default" id="main-navbar">
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#main-navbar-collapse" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
</button>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="main-navbar-collapse">
<ul class="nav nav-justified">
<li class=""><a href="#">Item 1</a></li>
<li class=""><a href="#">Item 2</a></li>
<li class=""><a href="#">Item 3</a></li>
<li class=""><a href="#">Item 4</a></li>
</ul>
</div><!-- /.navbar-collapse -->
</div><!-- /.container-fluid -->
</nav>
</header>
JS:
var $window = $(window);
function checkWidth() {
var windowsize = $window.width();
if (windowsize >= 768) {
$('#main-navbar').hide();
$('#header').hover(function() {
$('#main-navbar').slideToggle();
});
} else {
$('#main-navbar').show();
}
};
// Check the width on load.
checkWidth();
// Bind event listener everytime the window size changes.
$(window).resize(checkWidth);
如何讓腳本停止多次運行並在每次調整屏幕大小時重置?
感謝
感謝您的。它解決了我的一些問題,多重開放。然而,我需要做的另一部分是在較小的設備上顯示#main-navbar(小於768)並刪除鼠標輸入功能。一旦我調整大小,我的腳本似乎沒有爲小屏幕做任何事情。 – Darren