js 吸顶以及一些获取文档高度等小方法
1.返回html文档元素
document.documentElement
2.文档的高度
document.body.clientHeight
3.html文档可视高度==页面可见区域的高度
document.documentElement.clientHeight
4.获取元素距离文档顶部的距离
document.querySelector('.a').offsetTop
5.获取元素距离可视区域顶部的距离(测试有偏差)left,bottom,right,分别距离页面左边,下边,右边
document.querySelector('.a').getBoundingClientRect().top
6.滚动条距离文档顶端的距离
document.documentElement.scrollTop
这是吸底的,吸顶把判断条件改成:sh < 200 200就是滚动条滑动多少距离开始吸顶
(代码可复制直接看效果,因为谷歌每次滚动距离正负100,所以效果可能没那么好,如果有什么好方法,麻烦指教)
*{margin: 0;padding: 0}
.con{width: 100px;height: 200px;border: 1px solid lime}
.a{width: 100%;height: 100px;background: lime;}
.scroll_avtive{position: fixed;left: 0;bottom: 0;}
<div class="con"></div>
<div class="con"></div>
<div class="con"></div>
<div class="con"></div>
<div class="con"></div>
<div class="con"></div>
<div class="con"></div>
<div class="con"></div>
<div class="con"></div>
<div class="con"></div>
<div class="a scroll_avtive"></div> <!--固定元素,其他div只为显示出滚动条-->
<div class="foot con"></div>
// 获取吸顶元素的高度,并转化为整数
let fixedElH = parseInt(getComputedStyle(document.querySelector('.foot'),null).height)
// 获取文档高度
let dh = document.body.clientHeight //获取可视区域的高度
let vh = document.documentElement.clientHeight
//获取固定元素
let a = document.querySelector('.a')
let scrollFunc=function(e){
//获取滚动条滚动距离
let sh = document.documentElement.scrollTop||document.body.scrollTop;
// event事件兼容写法
e=e || window.event;
////IE/Opera/Chrome浏览器使用的是wheelDelta,并且值为“正负120”(使用chrome是正负100)
console.log(sh)
if(e.wheelDelta){
// document.documentElement.scrollTop+=50
if(dh-sh < vh+fixedElH){
a.classList.remove('scroll_avtive')
}else{
a.classList.add('scroll_avtive')
}
//Firefox
}else if(e.detail){ }
}
if(document.addEventListener){
document.addEventListener('DOMMouseScroll',scrollFunc,false);
}//W3C
//IE/Opera/Chrome
window.onmousewheel=document.onmousewheel=scrollFunc;
js 吸顶以及一些获取文档高度等小方法的更多相关文章
- jquery获取文档高度和窗口高度的例子
jquery获取文档高度和窗口高度,$(document).height().$(window).height() $(document).height():整个网页的文档高度 $(window).h ...
- jquery获取文档高度和窗口高度汇总
jquery获取窗口高度和窗口高度,$(document).height().$(window).height() $(document).height():整个网页的文档高度 $(window).h ...
- VS2010 MFC中 在FormView派生类里获取文档类指针的方法
经过苦苦调试,今晚终于解决了一个大问题. 我想要实现的是:在一个FormView的派生类里获取到文档类的指针. 但是出现问题:试了很多办法,始终无法获取到. 终于,此问题在我不懈地调试加尝试下解决了. ...
- js获取文档高度
网页可见区域宽: document.body.clientWidth网页可见区域高: document.body.clientHeight网页可见区域宽: document.body.offsetWi ...
- js 和 jquery 获取页面和滚动条的高度 视口高度文档高度
js 和 jquery 获取页面和滚动条的高度 //页面位置及窗口大小 function GetPageSize() { var scrW, scrH; if(window.innerHeight & ...
- js、jQuery 获取文档、窗口、元素的各种值
基于两年开发经验,总结了 javascript.jQuery 获取窗口.文档.元素的各种值 javascript: 文档:是整个document所有的内容 浏览器当前窗口文档body的宽度: docu ...
- [sharepoint]rest api文档库文件上传,下载,拷贝,剪切,删除文件,创建文件夹,修改文件夹属性,删除文件夹,获取文档列表
写在前面 最近对文档库的知识点进行了整理,也就有了这篇文章,当时查找这些接口,并用在实践中,确实废了一些功夫,也为了让更多的人走更少的弯路. 系列文章 sharepoint环境安装过程中几点需要注意的 ...
- javaScript获取文档中所有元素节点的个数
HTML+JS 代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...
- SharePoint 2013 通过审计获取文档下载次数
1.创建一个文档库,进入库设置,找到”Information management policy settings”,点进去,如下图: 2.分别设置”Document”.”Folder”两个,如下图: ...
- Java解析word,获取文档中图片位置
前言(背景介绍): Apache POI是Apache基金会下一个开源的项目,用来处理office系列的文档,能够创建和解析word.excel.ppt格式的文档. 其中对word文档的处理有两个技术 ...
随机推荐
- 深入理解Redis锁与Backoff重试机制在Go中的实现
目录 Redis锁的深入实现 Backoff重试策略的深入探讨 结合Redis锁与Backoff策略的高级应用 具体实现 结论 在构建分布式系统时,确保数据的一致性和操作的原子性是至关重要的.Redi ...
- 揭秘!尤雨溪成立的VoidZero如何改变前端世界
前言 Vue和Vite之父尤雨溪宣布成立公司 VoidZero,目前已经融资3200万.这篇文章欧阳将带你了解VoidZero是如何改变javascript的世界! 关注公众号:[前端欧阳],给自己一 ...
- 017 Python 流程控制之 if 判断
博客配套视频链接: https://space.bilibili.com/383551518?spm_id_from=333.1007.0.0 b 站直接看 配套 github 链接:https:// ...
- Android复习(三)清单文件中的元素
<action> 向 Intent 过滤器添加操作. <activity> 声明 Activity 组件. <activity-alias> 声明 Activity ...
- FFmpeg开发笔记(五十六)使用Media3的Exoplayer播放网络视频
Android早期的MediaPlayer控件对于网络视频的兼容性很差,所以后来单独推出了Exoplayer库增强支持网络视频,在<Android Studio开发实战:从零基础到App上线( ...
- 容器化部署nacos 1.4.6报错caused: The specified key byte array is 0 bits which is not secure enough for any JWT
nacos2.0+ 与nacos 1.x区别 nacos在2.0+版本开始使用grpc与客户端通信,并且通过非8848端口通信 主要是有两个端口 端口 与主端口的偏移量 描述 9848 1000 客户 ...
- web端ant-design-vue-Anchor锚点组件使用小节(1)
web端ant-design-vue-Anchor锚点组件使用小节.项目开发中如果要实现前端页面平滑滚动到指定的位置,Anchor组件是一个好的选择,灵活且平滑,能满足常见的项目需求.最近开发中幸运的 ...
- hasOwnProperty()方法
hasOwnProperty()方法可以检测对象是否有某个属性 var man = { legs:2, hands:2, heads:1 } man.hasOwnProperty("head ...
- 函数(C语言)
目录 1. 函数的概念 2. 库函数 2.1 标准库和头文件 2.2 库函数的使用方法 3. 自定义函数 3.1 函数的语法形式 3.2 函数的举例 4. 形参和实参 4.1 实参 4.2 形参 4. ...
- 字符串、列表、元组、字典(python)
文章目录 1.python字符串 1.1 python访问字符串中的值 1.2Python 字符串连接 1.3Python字符串运算符 2.python列表 2.1访问列表中的值 2.2更新列表 2. ...