3

只是想知道是否有人能够解决不支持负值的 Firefox / Mozilla scrollTop

Chrome 和 Safari (WebKit) 似乎都能够允许用户滚动过去的页面内容并scrollTop在 jQuery 中使用时返回负值。尽管在 Firefox 上使用时无法滚动内容并接收负值scrollTop

其他人还有相同的疑问么?

谢谢,大卫

4

1 回答 1

1

由于 scrollTop 的默认行为在传递负值时滚动到 0,因此我执行了这个处理 scrollTop 并模拟“scrollDown”的函数。

如果anchor_pos是负数(所以它高于我当前的滚动位置),我从当前滚动位置减去它的值(因为它有一个负值,我使用 + 号)

function jumpToAnchor(scrollable_div_selector, anchor_selector)
{
    anchor_pos = $(anchor_selector).position().top;

    //check if negative value
    if (anchor_pos < 0)
    {
        anchor_pos = $(scrollable_div_selector).scrollTop() + anchor_pos; //anchor_pos is negative, so i'm substracting it
    }

    $(scrollable_div_selector).scrollTop(anchor_pos);
}
于 2015-01-20T11:51:22.887 回答