html+监听+页面滚动到底部,解决HTML5中滚动到底部的事件问题

问题:在H5中,我们有这样的需求:例如有列表的时候,滚动到底部时,需要加载更多。

解决方案:可以采用window的滚动事件进行处理

分析:如果滚动是针对整个屏幕而言的(不针对于某个界面小块),那么这个应该是是成立的:屏幕的高度+最大滚动的距离 = 内容的高度

代码实现:

监听滚动到底部滚动底部

.div2{

width:100px;

height:100px;

border:1px solid red

}

*{

margin:0

}

.button1:active{

background:red

}

body{

height:375px;

width:667px;

border:1px solid red

}

.div1{

height:600px;

width:100%;

background:red

}

.div2{

height:600px;

width:100%;

background:green

}

.div3{

height:600px;

width:100%;

background:blue

}

.div4{

height:600px;

width:100%;

background:yellow

}

window.onload = function(){

//获取容器父元素

var div0 = document.getElementsByClassName('div0')[0];

//height 计算属性的高度

var height = parseInt((window.getComputedStyle(div0, null).height).replace('px', ''));

console.log(height,"div0的计算高度")

window.onscroll = function(){

/*

scrollTop 为滚动条顶端距离界面右上角的距离,这里采用了兼容性写法

*/

let scrollTop = document.documentElement && document.documentElement.scrollTop ? document.documentElement.scrollTop : document.body.scrollTop;

//+-5是为了保证一定的弹性,并非要刚好相等才出发,

if(height-5<=scrollTop+clientHeight&&scrollTop+clientHeight<=height+5){

console.log('监听成功','到达底部')

}

}

}

代码的相关说明:很多时候,列表加载,我们不能够把装载子元素的父容器高度设死,此时采用style设置为auto时,element.style.height也会等于auto ,建议采用clientHeight或者利用计算样式getComputedStyle计算高度

总结

以上所述是小编给大家介绍的解决HTML5中滚动到底部的事件问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/460000.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SQL Server 存储引擎-剖析Forwarded Records

我们都知道数据在存储引擎中是以页的形式组织的,但数据页在不同的组织形式中其中对应的数据行存储是不尽相同的,这里通过实例为大家介绍下堆表的中特有的一种情形Forwared Records及处理方式. 概念 堆表中,当对其中的记录进行更新时,如果当前数据页无法满足更新行的容量,此时这…

买面包和IoC

今天上午准备去一个阿姨&#xff0c;在那里买面包。这可能是由于小尺寸她的&#xff0c;因此&#xff0c;管理不规范&#xff0c;所以&#xff0c;当你买面包。没有人行。即使所有的大学生&#xff0c;似几乎没有这种意识。。。 但让我感到震惊的是。尽管没有排队&#xff0c;但…

u3d游戏开发视频潭州_游戏美术行业的发展与应用人工智能学院专业介绍及未来前景系列报告会二...

为了让2020级新同学对动漫专业加深认识&#xff0c;更好的规划学习&#xff0c;学院于11月12日6点晚邀请了校企合作单位“369云遮月游戏公司”在长安校区图书馆阶梯教室进行了游戏美术行业的发展与应用的报告会&#xff0c;主题围绕“专业介绍与发展前景”展开&#xff0c;云遮…

html文件怎么生产vm页面,如何使用spring mvc将Html文件转换为.vm(velocity模板)文件...

首先&#xff0c;您需要清楚的是&#xff0c;当您使用MVC时&#xff0c;您可以以任何您想要的方式提供页面。这是您的问题的一个可能的解决方案&#xff0c;这是我自己的应用程序的实际代码。您可能想要像这样提供* .html请求。的web.xmlappServletorg.springframework.web.ser…

统计元音

Problem Description 统计每个元音字母在字符串中出现的次数。 Input 输入数据首先包括一个整数n&#xff0c;表示测试实例的个数&#xff0c;然后是n行长度不超过100的字符串。 Output 对于每个测试实例输出5行&#xff0c;格式如下&#xff1a; a:num1 e:num2 i:num3 o:num4 …

华为谷歌互利合作曝光:或将推Nexus手表

业内传言称&#xff0c;中国的华为科技公司和韩国LG电子公司&#xff0c;今年将为谷歌公司设计两款Nexus品牌的智能手机&#xff0c;这也将是华为科技第一次参加谷歌的Nexus硬件计划。日前&#xff0c;国外权威媒体披露了华为Nexus硬件计划的更多内容。除了一款5.7英寸的智能手…

unity2d随机生成物体_2020 年最好用的一键生成设计神器,全在这里了!

对于很多新手设计师来说&#xff0c;要高效率地完成一件看上去还不错的设计作品&#xff0c;其实并不是一件容易的事。特别是在现实的工作中&#xff0c;对于临危受命的任务&#xff0c;更是很少有人会耐心地等你慢慢去摸索的.……不慌&#xff0c;今天就掏出一份私藏已久的设计…

android MPV架构快速实现,不是所有的MPV都叫GL8,一体化智能座舱体验来袭

进入车内&#xff0c;首先映入眼帘的就是双12.3吋全液晶仪表及中控联屏&#xff0c;出色的画面质感在第一时间吸引了我的注意。当然&#xff0c;全新的一体化智能座舱理念&#xff0c;多屏互联、多维交互也是它的最大亮点之一。全新一代别克GL8家族采用迭代更新的通讯解决方案&…

基于SuperSocket的IIS主动推送消息给android客户端

在上一篇文章《基于mina框架的GPS设备与服务器之间的交互》中&#xff0c;提到之前一直使用superwebsocket框架做为IIS和APP通信的媒介&#xff0c;经常出现无法通信的问题&#xff0c;必须一天几次的手动回收程序池&#xff0c;甚至重起服务器&#xff0c;通常周末接到一个陌生…

教程-Delphi第三方控件安装卸载指南

1 只有一个DCU文件的组件。DCU文件是编译好的单元文件&#xff0c;这样的组件是作者不想把源码公布。一般来说&#xff0c;作者必须说明此组件适合Delphi的哪种版本&#xff0c;如果版本不对&#xff0c;在安装时就会出现错误。也正是因为没有源码&#xff0c;给使用者带来了不…

明细表如何添加重量_关于Revit中明细表标准的导出及导入

Revit中明细表的作用非常大&#xff0c;项目中的数据归类整理及统计都离不开它&#xff0c;今天给大家分享一下如何在Revit中进行明细表标准的导出及导入&#xff0c;减少在实际项目中的重复性工作。1. 首先在Revit中新建一个项目文件&#xff0c;在平面视图中随便画几条管道&a…

鸿蒙还是不是安卓,华为捐赠鸿蒙核心架构!是否形成“三足鼎立”?

发布会已经开完&#xff0c;万物互联时代也已开启。经过测试&#xff0c;鸿蒙系统支持几乎所有的安卓软件&#xff0c;换句话说安卓用户可以无缝过渡到鸿蒙系统&#xff0c;相比安卓&#xff0c;速度更快&#xff0c;耗电量更低&#xff0c;这无疑比安卓系统的体验好出一个档次…

BZOJ 1613: [Usaco2007 Jan]Running贝茜的晨练计划

题目 1613: [Usaco2007 Jan]Running贝茜的晨练计划 Time Limit: 5 Sec Memory Limit: 64 MBDescription 奶牛们打算通过锻炼来培养自己的运动细胞&#xff0c;作为其中的一员&#xff0c;贝茜选择的运动方式是每天进行N(1 < N < 10,000)分钟的晨跑。在每分钟的开始&…

Filter基金会

一个、总结 简单的说&#xff0c;Filter的作用就是拦截(Tomcat的)service&#xff08;Request&#xff0c;Response&#xff09;方法。拿到Request、Response对象进行处理。然后释放控制。继续自己主动流转。其运用的还是“分层”的思想。至于为什么要增加这一层&#xff0c;为…

python2处理耗时任务_RabbitMQ Go客户端教程2——任务队列/工作队列

本文翻译自RabbitMQ官网的Go语言客户端系列教程&#xff0c;本文首发于我的个人博客&#xff1a;liwenzhou.com&#xff0c;教程共分为六篇&#xff0c;本文是第二篇——任务队列。这些教程涵盖了使用RabbitMQ创建消息传递应用程序的基础知识。 你需要安装RabbitMQ服务器才能完…

html加载js文件失败,firefox/chrome动态设置script加载js文件失败

firefox&#xff0c;chrome等w3c浏览器下面&#xff0c;设置script标签的src来动态加载js文件时&#xff0c;有2中情况1)如果script标签已经加载过js文件&#xff0c;那么重新设置为其他js文件的路径时&#xff0c;无法加载这个js文件。2)如果未加载过js文件&#xff0c;是一个…

使用 CSS3 伪元素实现立体的照片堆叠效

CSS3 里引入的伪元素让 Web 开发人员能够在不需要额外添加 HTML 标签的情况下制作出复杂的视觉效果。例如&#xff0c;:before 和 :after 这个两个 CSS3 伪元素就可以帮助你实现很多有趣的效果。本教程将告诉你如何使用 CSS3 为元素创建一组漂亮的图片堆叠效果。 效果演示 …

启发式搜索A*算法

A* 寻路算法 (2011-02-15 10:53:11) 转载▼标签&#xff1a; 游戏 分类&#xff1a; 算法概述 虽然掌握了 A* 算法的人认为它容易&#xff0c;但是对于初学者来说&#xff0c; A* 算法还是很复杂的。 搜索区域(The Search Area) 我们假设某人要从 A 点移动到 B 点&#xff0c…

centos7全盘备份到本地_CentOS7下制作openssl1.1.1i RPM包并升级

点击上方"walkingcloud"关注&#xff0c;并选择"星标"公众号CentOS7下制作openssl1.1.1i RPM包并升级OpenSSL最新漏洞 OpenSSL官方发布了拒绝服务漏洞风险通告&#xff0c;漏洞编号为CVE-2020-1971漏洞详情OpenSSL是一个开放源代码的软件库包&#xff0c;应…

计算机科学与技术pdf,计算机科学与技术(.PDF

计算机科学与技术(计算机科学与技术(&#xff10;&#xff18;&#xff11;&#xff12;)(&#xff23;&#xff4f;&#xff4d;&#xff50;&#xff55;&#xff54;&#xff45;&#xff52;&#xff33;&#xff43;&#xff49;&#xff45;&#xff4e;&#xff43;&…