如何滚动到文档中的某个点?

时间:2017-02-03 20:53:53

标签: javascript jquery scroll

例如,我使用此页面:http://www.bulldoggin.com/home/

正如您所看到的,没有办法只滚动,每次滚动它会自动跳转到文档中的某个点。没有办法“半途而废”。

有没有办法用javascript,jQuery或其他方法来解决这个问题?我不想使用按钮跳转到页面的某个点,但我想通过滚动,使用鼠标滚轮,向下箭头等来实现这一点。

1 个答案:

答案 0 :(得分:0)

这是一个代码片段,可以满足您的需求,但仍需要大量工作,但它可以帮助您入门。



var lastScrollTop = 1;
var doneScrolling = true;

$(window).scroll(function(event){
  var st = $(this).scrollTop();
  if (doneScrolling == true) {
   doneScrolling = false
   if (st > lastScrollTop){
     $('html, body').animate({
        scrollTop: $("p").offset().top
    }, 2000, function(){
     doneScrolling = true
    });
   } else {
      $('html, body').animate({
        scrollTop: $("p").last().offset().top
    }, 2000, function(){
     doneScrolling = true
    });
   }
   lastScrollTop = st;
  }
});

div {
  height: 1000px;
}

p {
  height: 100px;
}

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>
  <p>Test 1</p>
  <p>Test 2</p>
  <p>Test 3</p>
  <p>Test 4</p>
  <p>Test 5</p>
  <p>Test 6</p>
  <p>Test 7</p>
  <p>Test 8</p>
  <p>Test 9</p>
  <p id="last">Test 10</p>
</div>
&#13;
&#13;
&#13;