温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何用javascript实现置顶

发布时间:2021-10-25 14:33:15 来源:亿速云 阅读:504 作者:iii 栏目:web开发

这篇文章主要讲解了“如何用javascript实现置顶”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何用javascript实现置顶”吧!

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

如何用javascript实现置顶

本文操作环境: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实现置顶这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI