2012-08-17 66 views
0

好吧,我有一个奇怪的情况。jQuery假碰撞检测

在网站上,我被要求添加页脚不应与侧边导航栏重叠的功能。有时候会发生在较小的分辨率上(但不会太小以至于不能改变媒体查询)。

所以我尝试了jQuery元素碰撞检测,但是在固定位置元素上似乎不可能。所以现在我在想,可能有办法获得文档高度,页脚高度和导航高度。使用.scroll()(或.scrollTo(),我不确定)检测我在文档中的位置,当页脚的顶部到达导航的底部时,更改导航的位置。

但现在我停留在如何实际编写这样的:d

那么,怎样才能让我的jQuery比较高度和计算,我在此基础上的文件在哪里?

值得注意的是,不幸的是我不能编辑太多的网站布局。

Here's my fiddle

而且here's the live site(如果更改分辨率和向下滚动,你可以看到的重叠。)

感谢。

回答

1

你在这里! Working script非常简单。但是这个想法只有在页脚具有绝对位置并且菜单是固定的时才起作用。

+0

伟大的开始!我认为页脚有相对位置,但我可能会改变它;) – Kyle 2012-08-17 10:32:59

+0

总体思路是计算页脚顶部和文档顶部之间的空闲空间。并在此处使用它maxScrollTop = heightBetweenFooterAndTop - navHeight; – 2012-08-17 10:35:09

+0

我认为它实际上可以和'position:relative;'一起工作。非常感谢! – Kyle 2012-08-17 10:37:12

0

也许这样的东西可能是一个起点:http://ryanfait.com/sticky-footer/ 这只是HTML和CSS。

+0

是的,这是一个很好的解决方案,但不幸的是我不能编辑太多的网站布局。 :( – Kyle 2012-08-17 10:18:36