我有以下jQuery基本上将div放在它的正常CSS定位(相对),直到达到某个偏移量(在这种情况下为60px)。此时,CSS变为position:fixed。
<script>
$(function () {
var $el = $('.sticky'),
originalTop = $el.offset(60).top; // store original top position
$(window).scroll(function(e){
if ($(this).scrollTop() > originalTop ){
$el.css({'position': 'fixed', 'top': '10px'});
} else {
$el.css({'position': 'absolute', 'top': originalTop});
}
});
});
</script>
我的想法是,上面的代码在1.3.2中工作,在我试着将这个代码插入一个新项目之后,我发现从1.6.2降级到jQuery v1.3.2导致它按预期工作。
有人可以告诉我如何更新我的jQuery代码以与jQuery 1.6.2兼容吗?
答案 0 :(得分:3)
改变这个:
originalTop = $el.offset(60).top;
对此:
originalTop = $el.offset().top;
offset(val)
now sets the offsetDoc(自版本1.4起)。而且,60不是一个合适的坐标值。