我在这里有一段工作代码:http://jsfiddle.net/Tgm6Y/4302/
这是jquery的剪辑:
(function(window){
$.fn.stopAtTop= function () {
var $this = this,
$window = $(window),
thisPos = $this.offset().top,
//thisPreservedTop = $this.css("top"),
setPosition,
under,
over;
under = function(){
if ($window.scrollTop() < thisPos) {
$this.css({
position: 'absolute',
top: ""
});
setPosition = over;
}
};
over = function(){
if (!($window.scrollTop() < thisPos)){
$this.css({
position: 'fixed',
top: 0
});
setPosition = under;
}
};
setPosition = over;
$window.resize(function()
{
bumperPos = pos.offset().top;
thisHeight = $this.outerHeight();
setPosition();
});
$window.scroll(function(){setPosition();});
setPosition();
};
})(window);
$('#one').stopAtTop();
$('#two').stopAtTop();
$('#three').stopAtTop();
$('#four').stopAtTop();
然而,我无法弄清楚如果div大于可查看区域时如何滚动div,然后一旦它到达底部就开始滚动它下面的div。
例如,在上面页面的#one中你可以看到你好,但是你永远看不到最后两个短语(结束,开始滚动)。我已经重新调整了CSS,使其不是100%的,但仍然无法解决这个问题。
在JavaScript / Jquery中我需要找到一种不滚动它下面的div的方法,直到显示div中的所有数据,然后向上滚动才能执行相同操作。任何帮助将不胜感激。
谢谢,