1

ここに例を作成しました:http://jsfiddle.net/Ninjanoel/9GEGU/

基本的に、右側に何かを貼り付けたいと思います。この場合は赤いボックスです。正しい量のページスクロールが発生すると、常に上部に固定されているように見えます。接辞'、それは左にジャンプし、私がすでに左側に持っているコンテンツと重なります。

ブートストラップにこのような大量のドキュメントがあるのは素晴らしいことですが、残念ながら、これに関して何かが欠けていると思います。助けてください。

var offsetFn = function() {
   return $('#sidebar').position().top;
}

$(document).ready(function(e) {
  $('#sidebar').affix({
      offset: {top: offsetFn}
  });
});​

はStackoverflowで見つけたコードスニペットで、トップオフセット値を推測する必要はありませんが、単純な値を指定しても、divが付加されると、左にジャンプします。

フィドルについての注意:それはあまりうまく機能していないようです、少なくとも私のhddのバージョンは左にジャンプします、しかしそれは私が基本的に使用しているコードであり、小さなウィンドウサイズは物事を複雑にするかもしれません、緑と赤のボックス縦の列であると想定されています

4

1 に答える 1

3

サイドバーの内部divを作成します。接辞がposition: fixed列に設定されているため、機能しません。

編集: http: //jsfiddle.net/9GEGU/2/を参照してください。関数は不要であり、FFで奇妙な動作を引き起こすだけなので、を削除して{offset: {top: offsetFn}}ください。見た目は同じですが、スクロールがスムーズになります。

また、span5(290px)の幅を#sidebarに設定します。これは、要素がある場合、position: fixedそれがドキュメントフローから削除され、親の幅によって制限されないためです。

于 2012-12-02T23:54:49.493 に答える