Firefox和Internet Explorer与jquery固定标头中的错误

时间:2013-10-09 10:27:34

标签: jquery html css debugging

嘿同事们,

我一直在研究一个固定的标题,它会在滚动时使用顶部固定标题捕捉到位。

它适用于chrome,但不适用于interent explorer或firefox。

任何帮助都会很棒。

http://jsfiddle.net/j08691/f95sW/4/

var offset = $(".sticky-header").offset();
var sticky = document.getElementById("sticky-header")
var additionalPixels = 50;

$(window).scroll(function () {
    if ($('body').scrollTop() > offset.top - additionalPixels) {
        $('.sticky-header').addClass('fixed');
    } else {
        $('.sticky-header').removeClass('fixed');
    }
}); 

2 个答案:

答案 0 :(得分:3)

问题是$('body').scrollTop()

只需将$('body').scrollTop()替换为$(document).scrollTop()

即可

这是demo

答案 1 :(得分:0)

此处的问题是$('body').scrollTop()使用$(this).scrollTop(),即$(window).scrollTop()

$(window).scroll(function () {

    if ($(this).scrollTop() > offset.top - additionalPixels) {
        $('.sticky-header').addClass('fixed');
    } else {
        $('.sticky-header').removeClass('fixed');
    }
});

DEMO