スクロールスパイのデモ : ナビゲーションバーへの設定例。
body 属性
data-spy="scroll"data-target="#scrollspy-demo"data-offset="56" (⇒ 注1)nav.navbar.fixed-top.navbar-light 属性
id="scrollspy-demo"style="background: rgba(222,222,222,0.6);" (⇒ 注2)Scrollspy demo (1) (⇒ ナビゲーションバー - ブランド表示)ul.nav.nav-pills (⇒ ナビゲーションバー - ナビゲーション)
div.container
id="{位置ID}" を設定するdata-offset="56" はナビゲーションバーの高さ(px)。本ページはトップ固定ナビゲーションバーがあるため、スクロール位置計算の基準点がスクロールバーのすぐ下になるようにオフセット調整している。# によるページ内ジャンプはナビゲーションバーを考慮せず常にページ先頭にスクロールするため、ターゲットがバーに隠れてしまう。この問題解決はやや難しい(オフィシャルデモの動作も同じで、解決にはたぶん iframe が必要)。そこで妥協策として半透明バーを用い隠れた部分が透けて見えるようにして問題を緩和している。以下はスクロール用ダミーコンテンツ。ヘッダにはそれぞれ id="{位置ID}" が設定されており、スクロールスパイがスクロール検出と表示の連動を行う。