javascript - jQuery:滚动到有溢出的div的顶部:滚动;

标签 javascript jquery html css

Codepen Link

我需要滚动到具有固定 heightoverflow: scroll; 的 div 的顶部。

JavaScript

$('button').click(function() {
  var $target = $('aside div:first-child');
  var scrTop = Math.abs($target.offset().top);
  $('html, body').animate({
      scrollTop: scrTop
    }, 400);
  console.log($target.offset().top)
});

问题是 console.log() 返回 offset.top 方法的负整数,这在正常情况下不应该发生。

我尝试了不同的方法,但找不到方法。

这可能吗?

重现步骤:

  1. 滚动到内部有绿色 div粉色 div 底部。
  2. 点击按钮
  3. 打开 Dev Tools 并查看 console.log(); 返回的内容
  4. 并且不会滚动到绿色 div 的顶部。

有什么想法吗?

最佳答案

只是一个想法,

$parentDiv.scrollTop($parentDiv.scrollTop() + $innerListItem.position().top);

关于javascript - jQuery:滚动到有溢出的div的顶部:滚动;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33644861/

相关文章:

javascript - 为什么我无法导出 highcharts 中的图表?

javascript - 从 Angular 8 中的 http 响应读取错误状态代码时为 "Cannot read property message of null"

html - 并排响应图像和文本

html - 不在 html 中显示 block 引用和背景

javascript - 函数声明 vs 函数定义 JS

javascript - 如何在javascript或jquery中仅检测浏览器关闭按钮事件,无页面刷新等

jquery - wcf自托管jquery

php - jQuery:通过单击问题切换在 php 中生成的问答列表中答案的可见性

javascript - 如何找到具有特定属性的所有元素?

javascript - Body onLoad 点击刷新iframe