Javascript 获取div中的滚动位置

Javascript 获取div中的滚动位置,javascript,scroll,Javascript,Scroll,这一定是我遗漏的一些琐碎的东西,我真的想不出来: 我在这里凝视了很长时间: 我在这里玩了很长时间: 我要做出一些人类的牺牲来得到答案,为什么scrollTop总是为零 HTML <div style="height: 200px; border: 1px solid black; overflow: scroll"> <div id="x" style="height: 100px; background: #EEE;"></div> &l

这一定是我遗漏的一些琐碎的东西,我真的想不出来:

我在这里凝视了很长时间:

我在这里玩了很长时间:

我要做出一些人类的牺牲来得到答案,为什么scrollTop总是为零

HTML

  <div style="height: 200px; border: 1px solid black; overflow: scroll">
    <div id="x" style="height: 100px; background: #EEE;"></div>
    <div style="height: 500px"></div>
  </div>

请不要询问我。

因为您使用了错误的元素来获取topScroll 它应该是
x.parentNode.scrollTop
而不是
x.scrollTop

  var x = document.getElementById("x");
     x.parentNode.onscroll = function() { console.log(x.parentNode.scrollTop);
  }

您不了解规范的哪一部分:“
Element.scrollTop属性获取或设置元素内容向上滚动的像素数。
”?您在
#x
中没有可滚动的内容……是的,当然-现在我看到了。我想我盯着它看太久了。谢谢。我试过你的JSFIDLE,它正确显示了滚动位置。这是一个旧的答案,滚动行为支持当时不是100%,它仍在进行中,请参阅。
  var x = document.getElementById("x");
     x.parentNode.onscroll = function() { console.log(x.parentNode.scrollTop);
  }