使侧边栏长于浏览器但不长于滚动在一起的内容

时间:2013-01-11 00:12:26

标签: jquery wordpress

我到处寻找,但找不到合适的解决方案

侧边栏很长但是当我到达终点时仍然有空白区域,因为它不是内容的长度。所以,我想也许可以使用jquery“固定”,但问题是,它仍然是一个长边栏..所以有一种方法让我逐渐滚动侧边滚动,以便它到达底部边栏在我到达页脚的同时?

我想到的东西可能就像“(0,sidebarTop - scrollTop)”,其中'sidebartop'是位置('top'随着你的滚动而增加,因此它将侧边栏向下推)但是它不能正常工作..它实际上正在推动它了

我有点睡不着觉,我现在可能不会想清楚但我需要在星期六为客户解决这个问题。

你看侧边栏怎么样? (缩短你的浏览器) - 我希望它能让侧边栏逐渐向下移动,内容就像这样

1 个答案:

答案 0 :(得分:1)

您需要额外的数学运算:http://jsfiddle.net/VEsdu/317/

scrolled = Math.min(1, (scrollTop - sidebarTop)/(ch - wh));
topPosition += scrolled * (ch - sh);

在第一行,我们获取视口中内容的哪一部分 - 0表示视口顶部的内容顶部,1表示视口底部的内容底部。 在第二行,将边距添加到侧边栏,与内容/侧边栏高度之间的差异成比例。

我不确定这可以使用比侧边栏/内容更高的视口,或者在调整窗口大小后,你应该检查一下这些情况。