我想我已经完成了你所说的事情。这是你想要做的吗?
http://dropthebit.com/demos/stickyfloat/stickyfloat.html
看起来代码现在位于:
https ://gist.github.com/chaupt/728487
我不得不稍微修改一下,但侧边栏将保持固定,直到您滚动并且窗口顶部触及您要随页面滚动的元素的顶部。
编辑:
好吧,我想我明白你的意思了。尝试这个:
CSS:
#header {background-color:#0000ff; color:#fff; height:50px; text-align:center; width:100%; z-index:10; }
#wrapper {margin:0; padding:0; position:relative; z-index:1; }
#menu {background-color:#000000; clear:both; color:#fff; height:25px; padding:5px; position:relative; width:100%; z-index:10; }
#sidebar {background-color:#ff0000; color:#fff; float:left; margin:35px 0 0 0; position:relative; width:6em; }
#content {background-color:#ff00ff; color:#fff; margin:0 0 0 6em; padding:35px 0 0 .5em; }
p {margin:0 0 .5em 0; }
HTML:
<div id="header">Header</div>
<div id="wrapper">
<div id="menu">Menu</div>
<div id="sidebar">
<ul>
<li>Item1</li>
<li>Item2</li>
<li>Item3</li>
</ul>
</div>
<div id="content">
<p>Lorem ipsum dolor. Lorem ipsum dolor. Lorem ipsum dolor. Lorem ipsum dolor.
<p>Lorem ipsum dolor. Lorem ipsum dolor. Lorem ipsum dolor. Lorem ipsum dolor. Lorem ipsum dolor. Lorem ipsum dolor. Lorem ipsum dolor. Lorem ipsum dolor. Lorem ipsum dolor. Lorem ipsum dolor.</p>
</p>
</div>
</div>
然后从上面的 gisthub 位置添加 stickyFloat.js 文件,并添加:
<script type="text/javascript">
$(document).ready(function() {
$("#menu").stickyfloat({ duration: 400 });
$("#sidebar").stickyfloat({ duration: 400 });
});
</script>
我认为这就是您所说的:http: //jsfiddle.net/qVwTY/2/
顶部菜单贴在窗口的顶部,侧边栏将贴在窗口的底部。我没有在我拥有的所有浏览器中测试它,但它可以在最新版本的 Firefox 和 Chrome 中运行。
希望这可以帮助。