粘性导航太早粘在顶部

Sticky nav sticks to the top too early

我的站点中有一个粘性导航栏(基于 Bootstrap),那是 jQuery 代码:

    $(document).ready(function () {

        var flag = false;

        function stickNav() {
            $(".navbar-default").affix({
                offset: {
                    top: $('.header-img').height()
                }
            });
            $(".navbar-default").css({ "width": $('.container').width(), "z-index": 1000 });
            $(".navbar-wrapper").css("height", $('.navbar-default').height());
            $(".header").css("height", $('.header-img').height());
            flag = true;

        }

        $(".header img").ready(function () {
            if (!flag)
                window.setInterval(stickNav, 10);
        });

        $(window).resize(function () {
            $(window).off('.affix');
            $('.navbar-default').removeData('bs.affix').removeClass('affix affix-top affix-bottom');
            stickNav();
        });

和css:

.affix {
    top: 0;
    width: 100%;
}

问题是导航太早粘在顶部,这里是一个活生生的例子:http://nave.net23.net/Bootstrap/index.html

我的问题是我该如何解决?

谢谢。

当我加载页面并在 Chrome (44.0.2403.130 m) 中遇到问题时,我可以在控制台中发出以下两行,然后滚动似乎可以正常工作(如中所示火狐)。也许只是在页面加载函数中手动调用这些:

$(window).off('.affix');
$('.navbar-default').removeData('bs.affix').removeClass('affix affix-top affix-bottom');