私は JavaScript を使用しませんでしたが、CSS をプルして、一緒に投げたブートストラップ アプリに独自のサブナビゲーション バーを作成しました。関連する CSS.subnav
はhttp://twitter.github.com/bootstrap/assets/css/docs.cssにあります。
彼らの警告は、javascript が公共の消費のために書かれていないことを意味しているだけなので、完全にテストされていないか、うまく書かれていない可能性があります。ただし、これはスクロール時にサブナビゲーション バーを修正するための JavaScript です。
// fix sub nav on scroll
var $win = $(window)
, $nav = $('.subnav')
, navTop = $('.subnav').length && $('.subnav').offset().top - 40
, isFixed = 0
processScroll()
// hack sad times - holdover until rewrite for 2.1
$nav.on('click', function () {
if (!isFixed) setTimeout(function () { $win.scrollTop($win.scrollTop() - 47) }, 10)
})
$win.on('scroll', processScroll)
function processScroll() {
var i, scrollTop = $win.scrollTop()
if (scrollTop >= navTop && !isFixed) {
isFixed = 1
$nav.addClass('subnav-fixed')
} else if (scrollTop <= navTop && isFixed) {
isFixed = 0
$nav.removeClass('subnav-fixed')
}
}
基本的に、ウィンドウがスクロールすると、このコードはサブナビゲーション バーがウィンドウの上部に到達したかどうかを確認します。存在する場合、subnav-fixed
クラスが追加され、フラグが設定されます。それ以外の場合、クラスは削除され、フラグは false に設定されます