以下代码不是我的,它来自一个名为 Blueberry 的 jQuery 插件。
我对代码的问题是,当
//bind setsize function to window resize event
$(window).resize(function(){
setsize();
});
执行它会重置滚动位置,迫使用户浏览器返回顶部。
我认为这个问题只在 OSX 的 Chrome 上。
我还应该注意,即使窗口没有调整大小并且它发生在超时触发后,它也会发生。
如果我取消注释 setsize() 它仍然会发生,如果我删除 $(window).resize 它会停止......
任何人都知道为什么会发生这种情况以及是否有解决问题的方法?
如果有人也有解决方案,那么在 Blueberry 的 Github 页面上存在问题,因此您可以发送带有修复程序的 Pull Request。
编辑:
根据要求,这里有 setsize 函数,但请注意,我可以取消注释 setsize 函数,它仍然会改变滚动位置。
var setsize = function(){
sliderWidth = $('.slides', obj).width();
cropHeight = Math.floor(((sliderWidth/imgRatio)/o.lineheight))*o.lineheight;
$('.slides', obj).css({height: cropHeight});
};