深入浅析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 给汉字排序实例代码
Jun 28 Javascript
70+漂亮且极具亲和力的导航菜单设计国外网站推荐
Sep 20 Javascript
在iframe里的页面编写js,实现在父窗口上创建动画效果展开和收缩的div(不变动iframe父窗口代码)
Dec 20 Javascript
使用Java实现简单的server/client回显功能的方法介绍
May 03 Javascript
深入理解JavaScript系列(28):设计模式之工厂模式详解
Mar 03 Javascript
利用Angularjs和Bootstrap前端开发案例实战
Aug 27 Javascript
页面间固定参数,通过cookie传值的实现方法
May 31 Javascript
node跨域请求方法小结
Aug 25 Javascript
Vue入门之animate过渡动画效果
Apr 08 Javascript
bootstrap下拉框动态赋值方法
Aug 10 Javascript
JS中作用域以及变量范围分析
Jul 18 Javascript
JS绘图Flot如何实现可选显示曲线图功能
Oct 16 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
php empty,isset,is_null判断比较(差异与异同)
2010/10/19 PHP
Javascript 自定义类型方法小结
2010/03/02 Javascript
javascript instanceof 内部机制探析
2010/10/15 Javascript
jquery 操作DOM案例代码分享
2012/04/05 Javascript
jquery自定义属性(类型/属性值)
2013/05/21 Javascript
FireBug 调试JS入门教程 如何调试JS
2013/12/23 Javascript
js的延迟执行问题分析
2014/06/23 Javascript
jQuery中is()方法用法实例
2015/01/06 Javascript
仿Angular Bootstrap TimePicker创建分钟数-秒数的输入控件
2016/07/01 Javascript
jquery日历插件e-calendar升级版
2016/11/10 Javascript
JS实现图片垂直居中显示小结
2016/12/13 Javascript
详解JavaScript常量定义
2017/01/03 Javascript
JavaScript实现前端实时搜索功能
2020/03/26 Javascript
vue2.0父子组件间通信的实现方法
2017/04/19 Javascript
利用vueJs实现图片轮播实例代码
2017/06/03 Javascript
Makefile/cmake/node-gyp中区分判断不同平台的方法
2018/12/18 Javascript
图解NodeJS实现登录注册功能
2019/09/16 NodeJs
[36:33]完美世界DOTA2联赛循环赛 Matador vs Forest 第一场 11.06
2020/11/06 DOTA
Python同时向控制台和文件输出日志logging的方法
2015/05/26 Python
python中的TCP(传输控制协议)用法实例分析
2019/11/15 Python
Python三元运算与lambda表达式实例解析
2019/11/30 Python
Python3 虚拟开发环境搭建过程(图文详解)
2020/01/06 Python
基于Python实现人脸自动戴口罩系统
2020/02/06 Python
python统计字符的个数代码实例
2020/02/07 Python
Scrapy框架介绍之Puppeteer渲染的使用
2020/06/19 Python
基于 Python 实践感知器分类算法
2021/01/07 Python
html5+CSS3+JS实现七夕言情功能代码
2017/08/28 HTML / CSS
高中生学习总结的自我评价范文
2013/10/13 职场文书
党员教师工作决心书
2014/03/13 职场文书
奥林匹克的口号
2014/06/13 职场文书
教师节表彰会主持词
2015/07/06 职场文书
2015年学校远程教育工作总结
2015/07/20 职场文书
2016年禁毒宣传活动总结
2016/04/05 职场文书
如何用PHP实现分布算法之一致性哈希算法
2021/05/26 PHP
Java Socket实现多人聊天系统
2021/07/15 Java/Android
MySQL表锁、行锁、排它锁及共享锁的使用详解
2022/04/02 MySQL