jquery offset函数应用实例 - Web前端
作者:98wpeu发布时间:2026-05-20分类:网页前端技术浏览:2
我们有时候需要实现这样一种功能:点击一个按钮,然后在按钮的下方显示一个div。当按钮位于角落时,div的位置设定就需要调整,不然,div将显示不完全。
我打算使用offset()方法实现此功能,但要先弄清楚他的功能。
offset()的top是指元素与document的上边的距离,而不是浏览器当前窗体的上边缘,如图1。
图1:document高度超过window,浏览器出现滚动条,滚动滚动条,提交按钮的offset不变。

图2:document中的div有滚动条,提交按钮的offset随div的滚动变化而变化,与document无关

offset().left 同理。
通过上面的实验我们可以得出以下结论:offset() 获取指元素(html 元素)距离document上边缘、左边缘的像素,我们只要清楚浏览器中document是那部分就可以正确使用offset()。关于document可以阅读 JQuery window、document、 body
那么我们怎么保证元素完整的显示在浏览器视窗里呢?我们可以结合offset 和 scrollTop来实现。
scrollTop获取的是什么值?根据我的实验,只有元素具有滚动条,并且滚动了一定距离,才有scrollTop值,没有滚动条的元素scrollTop=0,比如一个button的scrollTop恒等于0。以前我有种错误的认知:document与他里面的子元素具有相同的滚动值,这是错误的,子元素与容器的滚动值无关。
按图1(document有滚动条),需计算控件的offsetTop、高度,document的scrollTop;
按图2(document无滚动条),计算控件的offsetTop、高度
源代码:jquery_offset.rar
- 上一篇:圣诞节Merry Christmas给博客添加浪漫的下雪效果基于jquery实现 - Web前端
- 下一篇:已经是最后一篇了
相关推荐
- jquery插件制作 提示框插件实现代码 - Web前端
- 圣诞节Merry Christmas给博客添加浪漫的下雪效果基于jquery实现 - Web前端
- 创建公共调用 jQuery Ajax 带返回值 - Web前端
- jquery getScript动态加载JS方法改进详解 - Web前端
- 这些年、我收集的JQuery代码小结 - Web前端
- Jquery ajaxStart()与ajaxStop()方法(实例讲解) - Web前端
- jQuery 自定义函数写法分享 - Web前端
- 基于jquery的DIV随滚动条滚动而滚动的代码 - Web前端
- 学习从实践开始之jQuery插件开发 对话框插件开发 - Web前端
- jQuery结合PHP+MySQL实现二级联动下拉列表[实例] - Web前端
- 网页前端技术排行
- 最近发表
-
- WordPress随机显示特色图片插件:Random Post Thumbnails
- KeePass实现Chrome浏览器自动填充密码方法一
- LNMP一键包nginx 301强制跳转到https教程
- KeePass实现Chrome浏览器自动填充密码方法二
- #建站# 免费的VPS管理软件Xshell8/Xftp8中文版下载
- 使用Xshell 8连接VPS教程_电脑登录vps的方法
- WordPress评论界面添加烟花????效果
- 不同浏览器书签同步方案:坚果云+Floccus_详细使用教程
- iOS端KeePassXC客户端APP:Strongbox Password Safe
- 给WordPress评论中的Gravatar头像图片添加ALT属性


