实现移动端上拉加载效果

摘要:
Bi Design最终完成。他创建了一个webApp,并从中学到了很多东西。该页面对上拉加载的效果很有用。我今天刚刚整理好了。

毕设终于结束了,做了一个webApp,从中学习到了很多,页面有用到上拉加载的效果。今天就整理了一下。

上拉加载的实现思路其实很简单:

1.移动端触发touchmove事件(上拉)

2.判断最后一个元素是否已出现在底部

3.若出现,则js添加元素到页面末尾

思路图:

实现移动端上拉加载效果第1张

接下来开始编写style样式:

html,body{
	margin: 0px;
	 100%;
	height: 100%;
}
li{
	list-style: none;
}
#personkit_article_ul{
	 100%;
	position: relative;
	-webkit-padding-start:0;
	-webkit-margin-before:0;
	-webkit-margin-after:0;
}
.pin{
	/* 100%;*/
	height: 90px;
	background-color: #eee;
	padding: 6px 8px;
	position: relative;
	border-bottom: 1px solid #fff;
}
.personkit-article__img{
	 116px;
	height: 90px;
}
.personkit-article__img img{
	 100%;
	height: 100%;
}
.personkit-article__info{
	position: absolute;	
	left: 130px;
	top: 0px;
	padding: 0px 8px;
}
.personkit-article__title{
	line-height: 0px;
}
/*多行文本溢出作省略处理*/
.personkit-article__info p{
	display: -webkit-box;
	overflow: hidden;
	text-overflow:ellipsis;
	-webkit-line-clamp:3;
	-webkit-box-orient:vertical;
}
.bottom-line{
	text-align: center;
	background-color: #eee;
}

html结构:

<section id="item">
	<ul id="personkit_article_ul">
		<li class="pin">
			<div class="personkit-article__img">
				<img src="http://t.zoukankan.com/public/imgs/4.png" alt="">
			</div>
			<div class="personkit-article__info">
				<h3 class="personkit-article__title">关于保健的一本书</h3>
				<p>原来保健是这样的啊原来保健是这样的啊原来保健是这样的啊原来保健是这样的啊</p>
			</div>
		</li>
		<li class="pin">
			<div class="personkit-article__img">
				<img src="http://t.zoukankan.com/public/imgs/4.png" alt="">
			</div>
			<div class="personkit-article__info">
				<h3 class="personkit-article__title">关于保健的一本书</h3>
				<p>原来保健是这样的啊原来保健是这样的啊原来保健是这样的啊原来保健是这样的啊</p>
			</div>
		</li>
		<li class="pin">
			<div class="personkit-article__img">
				<img src="http://t.zoukankan.com/public/imgs/4.png" alt="">
			</div>
			<div class="personkit-article__info">
				<h3 class="personkit-article__title">关于保健的一本书</h3>
				<p>原来保健是这样的啊原来保健是这样的啊原来保健是这样的啊原来保健是这样的啊</p>
			</div>
		</li>
		<li class="pin">
			<div class="personkit-article__img">
				<img src="http://t.zoukankan.com/public/imgs/4.png" alt="">
			</div>
			<div class="personkit-article__info">
				<h3 class="personkit-article__title">关于保健的一本书</h3>
				<p>原来保健是这样的啊原来保健是这样的啊原来保健是这样的啊原来保健是这样的啊</p>
			</div>
		</li>
		<li class="pin">
			<div class="personkit-article__img">
				<img src="http://t.zoukankan.com/public/imgs/4.png" alt="">
			</div>
			<div class="personkit-article__info">
				<h3 class="personkit-article__title">关于保健的一本书</h3>
				<p>原来保健是这样的啊原来保健是这样的啊原来保健是这样的啊原来保健是这样的啊</p>
			</div>
		</li>
		<li class="pin">
			<div class="personkit-article__img">
				<img src="http://t.zoukankan.com/public/imgs/4.png" alt="">
			</div>
			<div class="personkit-article__info">
				<h3 class="personkit-article__title">关于保健的一本书</h3>
				<p>原来保健是这样的啊原来保健是这样的啊原来保健是这样的啊原来保健是这样的啊</p>
			</div>
		</li>
	</ul>
	<div class="bottom-line"></div>
</section>

js是用zepto.js库实现的:

<script src="http://t.zoukankan.com/public/zepto.js"></script>

;(function(){
	$('#personkit_article_ul').on('touchmove',function(){
		//判断最后一个元素是否在底部之上
		if( $('.pin').eq($('.pin').length-1).offset().top-$(window).scrollTop() < $(window).height() ){
			$('.bottom-line').css('display','block').text('正在刷新...');
			checkPull();
		}
	});
	//添加元素方法
	function checkPull(){
		var pinNew;
		pinNew=document.createDocumentFragment();
		//每次添加5条内容
		for(var j=5;j>0;j--){
			var li=document.createElement('li');
			li.className="pin";
			li.innerHTML='<div class="personkit-article__img"><img src="http://t.zoukankan.com/public/imgs/4.png" alt=""></div><div class="personkit-article__info"><h3 class="personkit-article__title">关于保健的一本书</h3><p>原来保健是这样的啊原来保健是这样的啊原来保健是这样的啊原来保健是这样的啊</p></div>';
			pinNew.appendChild(li);
		}
		$('#personkit_article_ul')[0].appendChild(pinNew);
	}
})();

这个效果是模拟移动端,测试时可使用谷歌浏览器——右键——审查元素,点击上面已圈点的地方可看到效果

实现移动端上拉加载效果第2张

免责声明:文章转载自《实现移动端上拉加载效果》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇二逼的方式解决 gitlab-runner 拉取代码需要登录的问题C# 配置文件读取与修改下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

echarts基本应用-更改坐标轴文字样式、轴名称、轴刻度、轴线、轴网格、曲线(折线图)、柱体上面显示值(柱状图),鼠标悬浮提示

让我根据这些天的需要总结一些常用文档。1.axisLabel:{axis text,show:true在xAxis或yAxis根下,textStyle:{color:“#333”,//更改坐标轴文本颜色fontSize:12//更改坐标轴文字大小}}2.grid:{图标到周围区域的距离,包括顶部、左侧、右侧和引导,可以是100%left:“1%”right:...

开源项目推荐:Qt有关的GitHub/Gitee开源项目

https://www.froglogic.com/windeployqthttps://doc.qt.io/Qt-5/windows部署。htmlhttps://wiki.qt.io/Deploy_an_Application_on_Windowshttps://github.com/lucasg/Dependencieshttp://www.depend...

avue 常用修改

1.搜索栅栏调整colum中对象的属性:searchSpan:4,column:[{label:"模型名称",prop:"name",search:true,searchSpan:4,},2.搜索框字段位置长度column:[{label:"流程标题23423432",searchLabelWidth:200,3.编辑页面,字段lable宽度设置labelW...

解决fiddler开启后打开浏览器提示无法访问网络

在使用python接口测试的过程中,jupyter经常被用来调试python代码。因为jupyter的默认代理端口是8888,所以当它启用时,它会打开fiddler数据包捕获并打开浏览器,提示“无法访问网络”。这个问题主要是由港口冲突造成的。您可以在工具选项连接中修改端口号,修改它,然后单击“确定”重新启动fiddler...

Latex添加参考文献

如何用.bib文件自动生成论文Reference一般期刊或会议给的Latex模板会自带参考文献样式,因此,可以利用.bib文件来自动生成该模板下的参考文献样式。下面以引用以下三篇论文为例,来说明如何生成.bib文件,然后利用.bib文件自动生成Reference。引用论文:1.生成.bib文件(1)新建一个.txt文件;(2)打开Google学术,搜索你想要...

C#使用FFMPEG推流,并且获取流保存在本地,随时取媒体进行播放!

最近,基于C#的拖缆的发展并不理想。最后,经过不懈的努力,我取得了一些成绩。这是一张便条;本文重点介绍如何将ffmpeg用于简单的流式传输。如果没有官方文档WithFilter.WithField,简单的代码行似乎很难。拉动();以上是流和获取流的核心代码,保存在本地=TargetType。Live){thrownewApplicationException...