Swiper 쉬운 예제 모음

Swiper 이미지 동적 로딩 (lazy)

다음, 이전 이미지를 슬라이드 할 때 로딩(동적 로딩)


- 아래 이미지를 좌우로 드래그 해보세요.
- 이미지가 많을 경우 필요할때만 로딩하는 동적로딩 예제입니다.
- 현재 이미지 기준 이전, 다음 이미지를 로딩합니다.
- 이미지가 아주 많을때 사용하면 좋습니다.

※ 아래 예제는 무려 30개의 이미지를 사용하지만 처음 페이지 로딩시
  단, 2~3개의 이미지만 로딩합니다.
※ 슬라이드시 필요에 따라 이전,다음 이미지를 동적 로딩합니다.
※ 간혹 빠르게 슬라이딩할 경우 로딩이 조금 늦어지는 경우도 있습니다.
랜덤사진 갤러리
<!-- 이 예제에서는 필요한 js, css 를 링크걸어 사용 -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/Swiper/4.5.1/css/swiper.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/Swiper/4.5.1/js/swiper.min.js"></script>

CSS

.swiper-container {
	width:650px;
	height:440px;
	border:5px solid silver;
	border-radius:5px;
	box-shadow:0 0 20px #ccc inset;
}
.swiper-slide {
	text-align:center;
	display:flex; /* 내용을 중앙정렬 하기위해 flex 사용 */
	align-items:center; /* 위아래 기준 중앙정렬 */
	justify-content:center; /* 좌우 기준 중앙정렬 */
}
.swiper-slide img {
	border:1px solid #000;
	box-shadow:7px 7px 2px #ccc;
}

HTML

<!-- 클래스명은 변경하면 안 됨 -->
<div class="swiper-container">
	<div class="swiper-wrapper">
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0793.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0394.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0026.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0703.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0184.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0682.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0571.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0081.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0504.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0696.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0313.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0186.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0820.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0048.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0291.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0498.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0395.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0719.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0743.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0769.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0189.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0461.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0312.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0238.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0688.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0170.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0108.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0316.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0762.webp" class="swiper-lazy"></div>
		<div class="swiper-slide"><img data-src="https://ktsmemo.cafe24.com/p/0096.webp" class="swiper-lazy"></div>
	</div>

	<!-- 네비게이션 버튼 -->
	<div class="swiper-button-next"></div><!-- 다음 버튼 (오른쪽에 있는 버튼) -->
	<div class="swiper-button-prev"></div><!-- 이전 버튼 -->

	<!-- 페이징 -->
	<div class="swiper-pagination"></div>
</div>
<div style="text-align:center; margin-top:5px;">랜덤사진 갤러리</div>

자바스크립트

new Swiper('.swiper-container', {

	// ★동적로딩 설정
	lazy : {
		loadPrevNext : true // 이전, 다음 이미지는 미리 로딩
	},

	// 페이징 설정
	pagination : {
		el : '.swiper-pagination',
		clickable : true, // 페이징을 클릭하면 해당 영역으로 이동, 필요시 지정해 줘야 기능 작동
	},

	// 네비게이션 설정
	navigation : {
		nextEl : '.swiper-button-next', // 다음 버튼 클래스명
		prevEl : '.swiper-button-prev', // 이번 버튼 클래스명
	},
});

실행 가능한 소스

요약 정리

HTML
<div class="swiper-container">
    <div class="swiper-wrapper">
         <div class="swiper-slide"><img data-src="이미지 경로" class="swiper-lazy"></div>
    </div>
</div>


자바스크립트
new Swiper( '.swiper-container', {
     // 동적로딩 설정
    lazy : {
        loadPrevNext : true // 이전, 다음 이미지는 미리 로딩
    },
});

※ 예제에 사용한 모든 이미지들은 직접 촬영한 사진입니다.
※ 새로고침하면 사진이 바뀝니다. (이 사이트 기능입니다)

방문해 주셔서 감사드립니다. ^^*