滚动元素对应滚动窗口

时间:2017-09-05 10:21:10

标签: jquery html css scroll

我想问你"如何创建滚动元素与滚动窗口相对应。"

如果窗口滚动结束,则该元素可以向下滚动。 如果窗口开始滚动,那么该元素可以向上滚动。

我试图做到这一点,但没有解决。

这是我的代码:

$(window).on('scroll',function(event) {
        var lengthScrollWindow = $(this)[0].scrollTop;
        if ($(this).scrollTop() == 0) {
            lengthScrollWindow -= 40;
            $('.main_profile').animate({scrollTop: lengthScrollWindow},700);
        }
        else if ($(this).scrollTop() >= $(this)[0].scrollHeight) {
            lengthScrollWindow += 40;
            $('.main_profile').animate({scrollTop: lengthScrollWindow},700);
        }
    });

这是我的小提琴:

Js Fiddle

1 个答案:

答案 0 :(得分:0)

我认为问题在于您尝试使用错误的数量来动画.main_profile。我无法确切地告诉你要做什么,但是当你向下滚动时向下滚动时,你想要移动.main_profile你可以像这样动画它:

        $(document).ready(function() {
      var lastScrollTop = 0;
      $(".main_profile").scroll(function(event) {


        var top = 40;
        var st = $(this).scrollTop();
        if (st < lastScrollTop) {
       top -= 40;
          $(".main_profile").animate({
            top: top + "px"
          }, 1);


        } else if (st > lastScrollTop) {
      top += 40;
          $(".main_profile").animate({
            top: top + "px"
          }, 1);


        }
        lastScrollTop = st;
      });

    });