Jquery offset()。top在调整大小

时间:2018-01-27 05:31:58

标签: javascript jquery scroll resize offset

BLUF:在页面调整大小时,jQuery不再返回偏移或位置的正确值,导致滚动无法正常工作。

在页面加载时以及调整页面大小时,将执行以下代码:

$.each(bodies,function(key,val){
    val.scroll = ($("#main"+val.id).position().top-layout.header.height);
});

我也使用了偏移量:

$.each(bodies,function(key,val){
    val.scroll = ($("#main"+val.id).offset().top-layout.header.height);
});

调整窗口大小后,偏移量和位置都返回错误的值。但是,当页面一直滚动到顶部时调整页面大小,一切都会再次起作用。

计算滚动位置后,元素将滚动到使用:

$("#viewport").animate({scrollTop:body.scroll},function(){
    $("#headerText").html(body.name);
});

值得注意的是,我在页面顶部使用固定标题

我已经有这个问题好几个星期了,已经在网上寻找解决方案了

编辑:通过计算所需的滚动位置而不是使用偏移或位置来避开问题。

0 个答案:

没有答案