深入浅析JavaScript中的scrollTop


Posted in Javascript onJuly 11, 2016

含义:滚动条高度

作用:滚动加载(ajax),滚动导航固定定位,滚动弹框定位等等.

展示滚动导航和侧边栏滚动固定定位的效果:

1、chrome浏览器

document.body.scrollTop和document.documentElement.scrollTop都可以

2、各浏览器下 scrollTop的差异

IE6/7/8/9/10:

对于没有doctype声明的页面里可以使用 document.body.scrollTop 来获取 scrollTop高度 ;
对于有doctype声明的页面则可以使用 document.documentElement.scrollTop ;

Safari:

safari 比较特别,有自己获取scrollTop的函数 : window.pageYOffset ;

Firefox:

火狐等等相对标准些的浏览器就省心多了,直接用

document.documentElement.scrollTop ;

3、获取scrollTop值

完美的获取scrollTop 赋值短语 :

var scrollTop = document.documentElement.scrollTop||window.pageYOffset||document.body.scrollTop;

ps:javascript中scrolltop用法的问题

document.documentElement.scrollTop指的是滚动条的垂直坐标

document.documentElement.clientHeight指的是浏览器可见区域高度

document.documentElement.clientHeight-oDiv是悬浮框的初始垂直坐标(相对于body的top值)(这个值是固定不变的)

但是当你拉动滚动条的时候,悬浮框的垂直坐标(target)必须要在初始坐标的基础上增减相应的值才能获得视觉上随滚动条滚动的效果,而这个增减的值就是滚动条拉动的距离,即你这个scrollTop

下面给大家说下javascript中scrollTop和offsetTop有啥区别

scrollTop是指某个可滚动区块向下滚动的距离,比如向下滚动了10个像素,那么这个元素的scrollTop属性值就是10;

offsetTop则是元素的上边框与父元素的上边框的绝对距离。

两者描述的不是同一个东西,所以没有可比性。

以上所述是小编给大家介绍的JavaScript中的scrollTop的全部叙述,希望对大家有所帮助,如果大家想了解更多内容,敬请关注三水点靠木!

Javascript 相关文章推荐
JavaScript CSS 修改学习第四章 透明度设置
Feb 19 Javascript
用js实现的模拟jquery的animate自定义动画(2.5K)
Jul 20 Javascript
jquery select多选框的左右移动 具体实现代码
Jul 03 Javascript
Jquery选中或取消radio示例
Sep 29 Javascript
js判断浏览器类型为ie6时不执行
Jun 15 Javascript
JavaScript获取伪元素(Pseudo-Element)属性的方法技巧
Mar 13 Javascript
jQuery Ajax使用实例
Apr 16 Javascript
基于Bootstrap的Metronic框架实现页面链接收藏夹功能
Aug 29 Javascript
Angular1.x自定义指令实例详解
Mar 01 Javascript
Bootstrap 过渡效果Transition 模态框(Modal)
Mar 17 Javascript
微信小程序多音频播放进度条问题
Aug 28 Javascript
vue中uni-app 实现小程序登录注册功能
Oct 12 Javascript
js鼠标单击和双击事件冲突问题的快速解决方法
Jul 11 #Javascript
js 弹出对话框(遮罩)透明,可拖动的简单实例
Jul 11 #Javascript
Bootstrap3制作搜索框样式的方法
Jul 11 #Javascript
jQuery实现table中的tr上下移动并保持序号不变的实例代码
Jul 11 #Javascript
一个简单不报错的summernote 图片上传案例
Jul 11 #Javascript
Bootstrap实现弹性搜索框
Jul 11 #Javascript
Summernote实现图片上传功能的简单方法
Jul 11 #Javascript
You might like
md5 16位二进制与32位字符串相互转换示例
2013/12/30 PHP
9段PHP实用功能的代码推荐
2014/10/14 PHP
php使用fputcsv()函数csv文件读写数据的方法
2015/01/06 PHP
php二维数组合并及去重复的方法
2015/03/04 PHP
php实现Mongodb自定义方式生成自增ID的方法
2015/03/23 PHP
PHP读书笔记_运算符详解
2016/07/01 PHP
thinkphp5框架路由原理与用法详解
2020/02/11 PHP
利用PHP计算有多少小于当前数字的数字方法示例
2020/08/26 PHP
MooTools 页面滚动浮动层智能定位实现代码
2011/08/23 Javascript
JQuery for与each性能比较分析
2013/05/14 Javascript
jQuery on方法传递参数示例
2014/12/09 Javascript
JavaScript实现99乘法表及隔行变色实例代码
2016/02/24 Javascript
在Node.js中使用Javascript Generators详解
2016/05/05 Javascript
在DWR中实现直接获取一个JAVA类的返回值的两种方法
2016/12/25 Javascript
AngularJS中使用ngModal模态框实例
2017/05/27 Javascript
BootStrap Table实现server分页序号连续显示功能(当前页从上一页的结束序号开始)
2017/09/12 Javascript
详解使用Typescript开发node.js项目(简单的环境配置)
2017/10/09 Javascript
浅谈Vue Element中Select下拉框选取值的问题
2018/03/01 Javascript
2020淘宝618理想生活列车自动领喵币js脚本的代码
2020/06/02 Javascript
vue-router重写push方法,解决相同路径跳转报错问题
2020/08/07 Javascript
vue a标签点击实现赋值方式
2020/09/07 Javascript
python使用turtle库绘制树
2018/06/25 Python
django_orm查询性能优化方法
2018/08/20 Python
利用Python+阿里云实现DDNS动态域名解析的方法
2019/04/01 Python
python判断字符串以什么结尾的实例方法
2020/09/18 Python
详解CSS3+JS完美实现放大镜模式
2020/12/03 HTML / CSS
英国领先的体验日提供商:Buyagift
2019/04/19 全球购物
哪些情况下不应该使用索引
2015/07/20 面试题
石油大学毕业生自荐信
2014/01/28 职场文书
班班通项目实施方案
2014/02/25 职场文书
期末学生评语大全
2014/04/24 职场文书
导游个人求职信
2014/04/25 职场文书
给老婆道歉的话
2015/01/20 职场文书
孔子观后感
2015/06/08 职场文书
2015年秋季小学开学典礼主持词
2015/07/16 职场文书
了解Kubernetes中的Service和Endpoint
2022/04/01 Servers