0

当用户滚动到页面上的某个点时,我正在更改元素的 ID:

http://jsfiddle.net/QupNv/6/

ID应该根据他们所在的位置而改变。这是我的代码:

$(window).scroll(function() {

var scrollTop = $(window).scrollTop(),
    divOffset = $('#b').offset().top,
    dist = (divOffset - scrollTop);

$('.message').text(dist);

if (dist >= 100 && dist <= 200) {
    $('.switch').attr('id', 'd')
}
else if (dist > 1 && dist < 100) {
    $('.switch').attr('id', 'e')
}
else {
    $('.switch').attr('id', 'c')
}
});

当我有一个条件时,它就像一个梦一样工作,但是如果我添加 if else 那么它想跳回到窗口的顶部而不是继续向下滚动。关于我做错了什么的任何指示?

任何帮助是极大的赞赏!谢谢!

4

1 回答 1

1

据我所知,这是因为您的代码中没有 id="e" 的 DIV。这就是它跳回顶部的原因。

于 2013-04-29T20:10:01.553 回答