1

ブートストラップ ベースの Web サイトを構築していますが、現在問題があります。私がから呼び出す場合data-attributes

<body  data-target=".navbar" data-spy="scroll"  data-offset="200">

Scrollspy は動作します。

しかし、JavaScriptを使用すると

$('.navbar').scrollspy({offset:200});

これは動作しません!

私はすでに属性をオンザフライで配置しようとしています:

$("body").data("target", ".navbar");
$("body").data("spy", "scroll");
$("body").data("offset", "200");

今のところ結果なし。

JavaScriptの呼び出しに何か欠けていると思います。$('.navbar') がターゲットの場合、スパイ オブジェクト (ボディ) はどこに設定できますか?

4

2 に答える 2

0

これを行うにはさまざまな方法があります。これが役立つかどうかを確認してください: http://jsfiddle.net/panchroma/Tgghc/

データ属性を使用して、重要なビットは、スパイしたい div にデータ スパイの詳細を含めることです。

<div id="nav-wrapper" data-spy="affix" data-offset-top="200">
.....  

次に、CSS で、この div が追加されたときにどうしたいかを定義します。たとえば、次のようになります。

#nav-wrapper.affix {
top: 0;
width: 100%
}

付加された div は通常のフローから削除されるため、付加動作によってメイン コンテンツがジャンプしないように、少し再生する必要がある場合があります。

幸運を!

于 2013-02-22T13:30:00.607 に答える