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文档的处理有两个技术 ...
随机推荐
- WPF下使用FreeRedis操作RedisStream实现简单的消息队列
Redis Stream简介 Redis Stream是随着5.0版本发布的一种新的Redis数据类型: 高效消费者组:允许多个消费者组从同一数据流的不同部分消费数据,每个消费者组都能独立地处理消息, ...
- TS体操类型学习记录
Easy 1. Easy - 4 - Pick 从类型 T 中选出符合 K 的属性,构造一个新的类型 type MyPick<T, K extends keyof T> = { [key ...
- 揭秘!尤雨溪成立的VoidZero如何改变前端世界
前言 Vue和Vite之父尤雨溪宣布成立公司 VoidZero,目前已经融资3200万.这篇文章欧阳将带你了解VoidZero是如何改变javascript的世界! 关注公众号:[前端欧阳],给自己一 ...
- 高通ADSP USB流程
在高通平台上,ADSP(Audio Digital Signal Processor,音频数字信号处理器)可以通过 USB 接口与主机进行数据传输,以下是大致的 ADSP USB 流程: 主机发起 U ...
- Android Qcom USB Driver学习(一)
该系列文章总目录链接与各部分简介: Android Qcom USB Driver学习(零) USB接口类型 Android终端上常用的USB接口:TypeC(现在的主流),MicroB(以前的设备) ...
- 2024年4月中国数据库排行榜:OceanBase再度登顶,KingBase稳步上升进前五
春风劲吹,迎来了2024年4月中国流行度排行榜.纵观本月榜单,各家数据库产品你追我赶,名次呈现微妙变动,它们正以不可忽视的力量,推动着中国乃至全球的数据管理革新.在这春意盎然的四月,让我们继续关注这些 ...
- C# 的空类型
// 空类型 null int iii; // 默认 0 bool bbb; // 默认 false bool? b; // 空值 null int? i; // 空值 null string str ...
- KubeSphere 社区双周报 | KubeKey v3.0.7 发布 | 2023-02-03
KubeSphere 从诞生的第一天起便秉持着开源.开放的理念,并且以社区的方式成长,如今 KubeSphere 已经成为全球最受欢迎的开源容器平台之一.这些都离不开社区小伙伴的共同努力,你们为 Ku ...
- css超出部分...显示
首先需要设置宽 white-space: nowrap;// 文字不换行 overflow: hidden;// 超出隐藏 text-overflow: ellipsis; 实现移入后正常显示的可 ...
- MMCA:多模态动态权重更新,视觉定位新SOTA | ACM MM'24 Oral
来源:晓飞的算法工程笔记 公众号,转载请注明出处 论文: Visual Grounding with Multi-modal Conditional Adaptation 论文地址:https://a ...