javascript - 怎么通过js控制滚动条?
巴扎黑
巴扎黑 2017-04-11 13:03:24
[JavaScript讨论组]

我在




但是我在控制台输入这句话 document.body.scrollTop = 100;滚动条位置会变到100的位置,百思不得其解,为什么?在代码里面怎么控制?
巴扎黑
巴扎黑

全部回复(2)
高洛峰

你的 <script> 标签是不是写在 <head> 里了?
先将 <script> 移动到 </body> 前,或注册 onload 事件
必须确保在内容渲染后(数据超过浏览器高度,产生滚动条了)执行

window.addEventListener('load', evt => {
  debugger // 断点中断,此时看页面是否有内容且有滚动条
  window.scrollTo(0, 100) // 并且最好使用 window.scrollTo 方法
  setTimeout(() => window.scrollTo(0, 100), 0) // 还可以延迟一会执行
})

简单点,你在按钮上注册单击事件,在事件中设置滚动条位置肯定没有问题

ringa_lee

页面渲染时从上往下的
你的这段js估计是放到页面开头去了,执行的时候页面还没渲染出来,所以body还没有滚动条。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号