0

以下代码不是我的,它来自一个名为 Blueberry 的 jQuery 插件。

https://github.com/marktuk/蓝莓

我对代码的问题是,当

//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});
};
4

1 回答 1

-1

所以最终解决了我的问题,这取决于我在元素中设置了高度。

现在为什么它导致 $(window).resize 跳回页面顶部......我不知道!

如果有人能解决它会很棒。

于 2011-11-28T15:09:19.193 回答