jquery - 滚动到下一个/上一个 div 不适用于手动滚动

标签 jquery html css

目前,我正在尝试使用 jQuery 滚动构建一个站点。我的代码有效,但我的问题是使用我的代码,一旦到达底部并手动向上滚动,向下按钮就会停止工作。即使在手动滚动到顶部之后,如何让向下按钮起作用?

我当前的 html 代码:

<div class="down">next post</div>
<div class="container">
     <div class="posts"></div>
     <div class="posts"></div>
     <div class="posts"></div>
     <div class="posts"></div>
     <div class="posts"></div>
</div>

和我的 jquery 代码:

var $currentElement = $('.posts').first();
$('.down').click(function() {
    var $nextElement = $currentElement.nextAll('.posts');
    if($nextElement.length) {
        $currentElement = $nextElement;
        $('html, body').stop(true).animate({
            scrollTop: $nextElement.offset().top
        }, 900, 'swing')
    }
    return false;
});

最佳答案

使用这个 fiddle ...

var currentElement = $('.posts').first();
$('.down').click(function() {
  var nextElement = currentElement.nextAll('.posts');
  console.log(nextElement);
  if(nextElement.length) {
      currentElement = nextElement;
      $('html, body').stop(true).animate({
          scrollTop: nextElement.offset().top
      }, 900, 'swing');
  }
  return false;
}); 

关于jquery - 滚动到下一个/上一个 div 不适用于手动滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48595904/

相关文章:

jquery - 找出实例名称并销毁并切换到源模式

javascript - 选中复选框时如何使图像覆盖图像 Jquery

php - 为什么 HTML 形式不将值插入到 Mysql 中?

javascript - RequireJS:如何卸载之前加载的 JavaScript 文件?又名独占依赖?或者也许重置 RequireJS?

html - CSS 菜单项未对齐

javascript - 注入(inject)子元素时触发 jQuery mouseout

javascript - 如何简化以下代码?

html - 防止显示 :table-cell from stretching 的 div

html - 列表类型样式 : none does not remove bullet points

html - 列表项的 CSS 颜色没有改变