HTML5页面滚动到底部的功能怎么做
Admin 2022-07-18 群英技术资讯 938 次浏览
问题:在H5中,我们有这样的需求:例如有列表的时候,滚动到底部时,需要加载更多。
解决方案:可以采用window的滚动事件进行处理
分析:如果滚动是针对整个屏幕而言的(不针对于某个界面小块),那么这个应该是是成立的:屏幕的高度+最大滚动的距离 = 内容的高度
代码实现:
<html> <head> <meta charset="UTF-8"> <title>监听滚动到底部滚动底部</title> <style> .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 } </style> </head> <body > <div class="div0"> <div class="div1"></div> <div class="div2"></div> <div class="div3"></div> <div class="div4"></div> <div class="div5"></div> </div> </body> <script> 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('监听成功','到达底部') } } } </script> </html>
代码的相关说明:很多时候,列表加载,我们不能够把装载子元素的父容器高度设死,此时采用style设置为auto时,element.style.height
也会等于auto ,建议采用clientHeight
或者利用计算样式 getComputedStyle
计算高度
总结
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了html实现简单ListViews效果的实例代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
固定宽度这种方式是绝对定位居中,除了使用margin,还可以使用transform。宽度未知将子元素设置为行内元素,然后父元素设置text-align: center。
外部样式表,通过标签引入CSS。内部样式表,在HTML文档中的标签里通过标签书写CSS代码。行内样式表,通过属性书写CSS语句。导入样式表,使用@import指令导入外部样式表。
如何把图片变成“伪像素风”?本篇文章给大家介绍一下使用CSS处理图片,将其转为“像素风”的方法,希望对大家有所帮助!
在css中,可以利用“:nth-child(n)”选择器来选择div下的第几个p元素,该选择器的作用就是选择父元素下的第n个子元素,语法为“div p:nth-child(n){css样式代码;}”。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008