深入浅析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 常用代码技巧大收集
Feb 25 Javascript
LazyLoad 延迟加载(按需加载)
May 31 Javascript
asp.net+jquery滚动滚动条加载数据的下拉控件
Jun 25 Javascript
jquery基础教程之数组使用详解
Mar 10 Javascript
connect中间件session、cookie的使用方法分享
Jun 17 Javascript
javascript中Object使用详解
Jan 26 Javascript
js中遍历Map对象的方法
Jul 27 Javascript
基于node下的http小爬虫的示例代码
Jan 11 Javascript
Bootstrap实现的表格合并单元格示例
Feb 06 Javascript
微信小程序仿RadioGroup改变样式的处理方案
Jul 13 Javascript
推荐一个基于Node.js的表单验证库
Feb 15 Javascript
bootstrap tooltips在 angularJS中的使用方法
Apr 10 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
DISCUZ 分页代码
2007/01/02 PHP
php zip文件解压类代码
2009/12/02 PHP
百度实时推送api接口应用示例
2014/10/21 PHP
PHP使用curl函数发送Post请求的注意事项
2016/11/26 PHP
关于使用runtimeStyle属性问题讨论文章
2007/03/08 Javascript
this[] 指的是什么内容 讨论
2007/03/24 Javascript
JQuery 插件模板 制作jquery插件的朋友可以参考下
2010/03/17 Javascript
window.requestAnimationFrame是什么意思,怎么用
2013/01/13 Javascript
Jquery attr("checked") 返回checked或undefined 获取选中失效
2013/10/10 Javascript
js用正则表达式来验证表单(比较齐全的资源)
2013/11/17 Javascript
jQuery实现点击文本框弹出热门标签的提示效果
2013/11/17 Javascript
javascript记录文本框内文字个数检测文字个数变化
2014/10/14 Javascript
jQuery幻灯片特效代码分享--鼠标滑过按钮时切换(2)
2020/11/18 Javascript
JavaScript、jQuery与Ajax的关系
2016/01/24 Javascript
js仿百度切换皮肤功能(html+css)
2016/07/10 Javascript
深入分析node.js的异步API和其局限性
2016/09/05 Javascript
BootStrap便签页的简单应用
2017/01/06 Javascript
xmlplus组件设计系列之树(Tree)(9)
2017/05/02 Javascript
OkHttp踩坑随笔为何 response.body().string() 只能调用一次
2018/01/08 Javascript
在Vant的基础上实现添加表单验证框架的方法示例
2018/12/05 Javascript
从组件封装看Vue的作用域插槽的实现
2019/02/12 Javascript
vue防止花括号{{}}闪烁v-text和v-html、v-cloak用法示例
2019/03/13 Javascript
elementUI Tree 树形控件的官方使用文档
2019/04/25 Javascript
[55:16]Mski vs VGJ.S Supermajor小组赛C组 BO3 第二场 6.3
2018/06/04 DOTA
python实现中文分词FMM算法实例
2015/07/10 Python
我喜欢你 抖音表白程序python版
2019/04/07 Python
tornado+celery的简单使用详解
2019/12/21 Python
Django单元测试中Fixtures的使用方法
2020/02/26 Python
浅谈Python中的异常和JSON读写数据的实现
2020/02/27 Python
浅谈Python的方法解析顺序(MRO)
2020/03/05 Python
Python 多线程C段扫描、检测 Ping扫描脚本的实现
2020/09/03 Python
canvas进阶之贝塞尔公式推导与物体跟随复杂曲线的轨迹运动
2018/01/10 HTML / CSS
计算机数据库专业职业生涯规划书
2014/02/08 职场文书
士兵突击观后感
2015/06/16 职场文书
详解Python requests模块
2021/06/21 Python
直播实况, OMG破敌三路五十分钟大战神技局摩托车
2022/04/01 DOTA