You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

scrollTop属性在滚动事件监听器中无法生效的问题求助

scrollTop属性在滚动事件监听器中无法生效的问题求助

嘿,我完全懂你现在的困惑——刚接触事件监听和scrollTop的时候很容易踩这个小坑!

你代码里的问题核心在于:document对象本身并没有scrollTop属性,你得找对正确的元素来获取滚动距离才行。

通常我们获取页面垂直滚动距离,有两种靠谱的方式:

  • 标准模式下用 document.documentElement.scrollTop(对应HTML根元素)
  • 或者用兼容性更好的 window.pageYOffset,它在所有现代浏览器里都能正常工作

另外,你的函数名叫handleclick但其实是监听滚动事件,虽然不影响功能,但改成handleScroll会更语义化哦~

修改后的代码应该是这样的:

document.addEventListener("scroll", handleScroll);

function handleScroll() {
  // 用pageYOffset或者document.documentElement.scrollTop都行
  if (window.pageYOffset > 20) {
    alert("Hello World");
  }
}

还有个小提醒:要确保你的页面内容足够长,能让浏览器出现滚动条,不然根本触发不了滚动事件哦!

备注:内容来源于stack exchange,提问作者user22477980

火山引擎 最新活动