>웹 프론트엔드 >JS 튜토리얼 >페이지 풀업 로딩 효과를 달성하기 위한 예제 코드

페이지 풀업 로딩 효과를 달성하기 위한 예제 코드

零下一度
零下一度원래의
2017-06-24 14:09:032425검색

드디어 프로젝트가 끝났습니다. webApp을 만들고 페이지에 풀업 로딩 효과가 있어서 많은 것을 배웠습니다. 오늘 정리했습니다.

풀업 로딩의 구현 아이디어는 실제로 매우 간단합니다.

1. 모바일 단말기가 touchmove 이벤트(풀업)를 트리거합니다.

2. 마지막 요소가 하단에 표시되었는지 확인합니다.

3. . 그것이 나타나면 js는 페이지 끝의

Think 맵에 요소를 추가합니다:

다음으로 스타일 작성을 시작합니다:

html,body{
	margin: 0px;
	width: 100%;
	height: 100%;
}
li{
	list-style: none;
}
#personkit_article_ul{
	width: 100%;
	position: relative;
	-webkit-padding-start:0;
	-webkit-margin-before:0;
	-webkit-margin-after:0;
}
.pin{
	/*width: 100%;*/
	height: 90px;
	background-color: #eee;
	padding: 6px 8px;
	position: relative;
	border-bottom: 1px solid #fff;
}
.personkit-article__img{
	width: 116px;
	height: 90px;
}
.personkit-article__img img{
	width: 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="../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="../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="../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="../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="../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="../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 라이브러리:

c9f63b9fc0184ba412a2eeb801d0a80a2cacc6d41bbb37262a98f745aa00fbf0

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

이 효과는 테스트할 때 모바일 터미널을 시뮬레이션하기 위한 것입니다. , 구글 크롬 - 메일 - 요소 검사를 사용하실 수 있으며, 위의 항목을 클릭하시면 해당 위치를 표시하시면 효과를 보실 수 있습니다

위 내용은 페이지 풀업 로딩 효과를 달성하기 위한 예제 코드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.