Scroll上的平滑元素放置 - jQuery

时间:2013-08-18 11:30:37

标签: jquery scroll mousewheel

在我的网站上,侧栏的内容大部分时间都比主要内容短。

我希望仅“降低”该元素的滚动速率,以便在页面完全滚动时,它的顶部与页面顶部对齐,底部与页面底部对齐。

事情正在发挥作用,因为我希望它们在Firefox中,但是当鼠标滚轮用于滚动时,Chrome和IE会显示这种令人讨厌的跳跃。

我已经做了一些变量缓存来优化脚本,但它没有帮助(或者几乎没有)。

你可以在这看一下:

http://www.pastottawa.com/lastest/

谢谢,

1 个答案:

答案 0 :(得分:1)

您的问题是您正在尝试使用其他CSS功能复制CSS功能。而不是让#rightSideBar相对定位并将顶部值设置为基于距页面顶部到视口中显示的距离的值,您应该这样做:

#rightSideBar {
    position:fixed;
    right: 20px;
    top: /* set this value with Javascript */
}

CSS 的这个功能修复了元素在视口中的位置,你指定的位置,所以你需要做的就是设置你想要你的元素的用户浏览器viweport顶部的距离出现。这不是页面顶部的值,而是窗口顶部的像素数,无论其大小,位置或内容如何。