这就是我的页面的结构。 左列 (col-lg-3) 中心柱 (col-lg-6) 右栏 (col-lg-3)
虽然我的主要内容位于中心列,但我希望我的左列和右列在特定滚动位置后固定(或粘性)。
我在互联网上找到的大多数解决方案都是用 1 个左栏来粘性。我认为 javascript 需要做一些工作。
请访问http://www.bootply.com/LiOE57ZlwI 。到目前为止,左列的工作方式与我希望的完全一样......并且我希望右列的行为与左列相同。
另请访问http://www.bootply.com/101100 。我想要完全相同的行为。我不想使用这段代码,因为它在小屏幕尺寸下变得困惑。
谢谢
最佳答案
不要使用 id,而是使用类:
/* activate sidebar */
$('.sidebar').affix({
offset: {
top: 235
}
});
在 html 中,不要使用 id 并将“侧边栏”放入类中
<div class="col-md-3" id="leftCol">
<ul class="nav nav-stacked sidebar">
<li><a href="#sec0">Section 0</a></li>
<li><a href="#sec1">Section 1</a></li>
<li><a href="#sec2">Section 2</a></li>
<li><a href="#sec3">Section 3</a></li>
<li><a href="#sec4">Section 4</a></li>
</ul>
</div><!--/left-->
<div class="col-md-3" id="leftCol">
<ul class="nav nav-stacked sidebar">
<li><a href="#sec0">Section 0</a></li>
<li><a href="#sec1">Section 1</a></li>
<li><a href="#sec2">Section 2</a></li>
<li><a href="#sec3">Section 3</a></li>
<li><a href="#sec4">Section 4</a></li>
</ul>
</div><!--/right-->
CSS 也更改为类:
@media (min-width: 979px) {
.sidebar.affix-top {
position: static;
margin-top:30px;
width:228px;
}
.sidebar.affix {
position: fixed;
top:70px;
width:228px;
}
}
.sidebar li.active {
border:0 #eee solid;
border-right-width:5px;
}
关于javascript - 页面左侧和右侧的 Bootstrap 附加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28355976/