首页 >web前端 >前端问答 > 正文

javascript怎么实现置顶

原创2021-10-25 14:30:5801015

javascript实现置顶的方法:1、通过getBoundingClientRect获取元素到浏览器视窗顶部的距离;2、通过“$(document).scrollTop() for(...)”方法实现置顶功能即可。

本文操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

JavaScript实现置顶功能

JavaScript实现置顶功能的方式有很多,之前也用过一些, 感觉比较复杂吧,自己最近做的东西需要,因此也在网上找了些资料,最后找到一个方法 getBoundingClientRect() 可以获取页面元素到浏览器视窗顶部的距离。

最后代码如下:

let len = document.getElementById('flexbox').getBoundingClientRect().top;//获取元素到浏览器视窗顶部的距离
//$(document).scrollTop()为滚动条的高度
        for (let i = $(document).scrollTop(); i < len + $(document).scrollTop(); i++) {
            setTimeout(function () {
                window.scrollTo(0, i);
            }, 0)
        }

用循环的目的主要是使得元素置顶的时候不突兀,这个过程可以通过改变i++来实现,同时需要注意一点,如果for语句用的是var i 而不是let i,定时器则需要用立即执行函数包裹来保证i能立马生效。

用这种方式实现的置顶和锚点效果差不多,如果要实现悬浮置顶(某个部分固定在顶部),则可以考虑用position:fixed来实现。

就这样吧。。。。

【推荐学习:javascript基础教程

以上就是javascript怎么实现置顶的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

  • 相关标签:javascript
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐

    推荐视频教程
  • JavaScript正则表达式基础与实战JavaScript正则表达式基础与实战
  • JavaScript 经典案例JavaScript 经典案例
  • JavaScript—极速入门JavaScript—极速入门
  • JavaScript模块化教程JavaScript模块化教程
  • 视频教程分类