200滚动后jquery修复标题

时间:2014-07-11 13:48:13

标签: javascript jquery html css

我这里有一段代码jsfiddle。我无法在200次滚动后将其滚动固定。

$(window).load(function () {
    $(window).scroll(function () {
        if ($(this).scrollTop() > 200) {
            $('navbar').css('position', 'fixed');
            $('navbar').slideDown();
        } else if ($(this).scrollTop() <= 200) {
            $('navbar').removeClass('position', 'relative');
            $('navbar').slideUp();
        }
    });
});

2 个答案:

答案 0 :(得分:2)

您需要在.中添加navbar,因为它是class并将第一行更改为$(function () {

当您使用load事件时,无需在代码中执行onload功能。

另外,如评论中所述:

变化:

$('.navbar').removeClass('position', 'relative');

要:

$('.navbar').css('position', 'relative');

试试这个:

$(function () {
    $(window).scroll(function () {
        if ($(this).scrollTop() > 200) {
            $('.navbar').css('position', 'fixed');
            $('.navbar').slideDown();
        } else if ($(this).scrollTop() <= 200) {
            $('.navbar').css('position', 'relative');
            $('.navbar').slideUp();
        }
    });
});

<强> JSFiddle Demo

答案 1 :(得分:0)

.removeClass这个是.css

尝试

$('.navbar').css('position', 'relative');

而不是

$('.navbar').removeClass('position', 'relative');