2

我有一个我不知道如何解决的问题。

基本上,我正在集成一个 ScrollToFixed jQuery 插件并计算限制,我使用

jQuery( document ).height() - jQuery( \'body\').offset().top

或者

jQuery( 'body' ).height()

问题是它在所有浏览器中的工作方式都不同。我已经在 Chrome 中开发了我的实现,但是当我在其他浏览器中测试它时,它是一团糟。我将值输出到控制台,我得到了 600px 的高度差。

现在,由于我的客户将在多个网站上使用我的脚本,我必须找到一个通用的解决方案,如果它只对我来说会容易得多。

你能帮帮我吗,这甚至可能吗?

谢谢你。

4

1 回答 1

0

首先确保你标准化你的 css,所以它在所有浏览器中都是一样的。

然后用于$(window).height()获取浏览器窗口的高度。


更新:我不得不去寻找scrollToFixed插件,因为那里有多个类似的命名插件。我在这里找到了

如果您查看文档和限制选项的定义

元素开始向上滚动页面的垂直滚动位置(绝对)。

所以你需要做的就是在那个位置定位一个元素,就像作者在“非常完整的例子”演示中所做的那样:

limit: $('.footer').offset().top - $('#summary').outerHeight(true) - 10;

.footer显然是底部的页脚。它得到偏移顶部,然后减去滚动窗口的高度,再加上一个微小的边距(加宽结果框架以查看摘要滚动窗口)。

于 2013-03-09T17:53:42.713 回答