[javascript] PhotoSwipe를 이용한 이미지 컴퍼스 효과 구현 방법

이미지 컴퍼스 효과는 사용자가 마우스를 움직일 때 이미지가 회전하는 효과를 말합니다. 이번 기사에서는 PhotoSwipe 라이브러리를 사용하여 이미지 컴퍼스 효과를 구현하는 방법에 대해 알아보겠습니다.

PhotoSwipe란?

PhotoSwipe는 모바일 및 데스크톱 디바이스에서 동작하는 JavaScript 이미지 갤러리 라이브러리입니다. 이 라이브러리는 터치 제스처 지원, 줌 기능, 아이프레임 및 동영상 재생 등 다양한 기능을 제공합니다.

사용 방법

  1. PhotoSwipe 라이브러리를 다운로드하고 웹 페이지에 추가합니다. 아래는 CDN을 통해 라이브러리를 추가하는 예시입니다.
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/photoswipe.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/default-skin/default-skin.min.css">

<script src="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/photoswipe.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/photoswipe/4.1.3/photoswipe-ui-default.min.js"></script>
  1. 이미지 컨테이너를 HTML에 추가합니다. 아래 예시는 이미지를 <div>로 감싼 후 data-pswp-uid 속성을 지정하는 방법입니다.
<div itemscope itemtype="http://schema.org/ImageGallery" id="myGallery">
  <figure itemprop="associatedMedia" itemscope itemtype="http://schema.org/ImageObject">
    <a href="path/to/image-1.jpg" itemprop="contentUrl" data-size="800x600">
      <img src="path/to/thumbnail-1.jpg" itemprop="thumbnail" alt="Image 1">
    </a>
    <figcaption itemprop="caption description">Image 1</figcaption>
  </figure>
  <figure itemprop="associatedMedia" itemscope itemtype="http://schema.org/ImageObject">
    <a href="path/to/image-2.jpg" itemprop="contentUrl" data-size="800x600">
      <img src="path/to/thumbnail-2.jpg" itemprop="thumbnail" alt="Image 2">
    </a>
    <figcaption itemprop="caption description">Image 2</figcaption>
  </figure>
  <!-- 추가 이미지 -->
</div>
  1. JavaScript 코드에서 PhotoSwipe 인스턴스를 생성하고 초기화합니다. 아래 예시는 위에서 추가한 이미지 컨테이너의 id를 사용하여 인스턴스를 생성하는 방법입니다.
var pswpElement = document.querySelectorAll('.pswp')[0];

// 이미지 옵션 설정
var options = {
  history: false,
  focus: false,

  // 기타 옵션 설정
};

var gallery = new PhotoSwipe(pswpElement, PhotoSwipeUI_Default, items, options);
gallery.init();

위 코드에서 items 변수는 이미지 경로, 크기 및 캡션 정보를 포함하는 배열입니다.

마무리

이제 PhotoSwipe를 사용하여 이미지 컴퍼스 효과를 구현하는 방법을 알아보았습니다. PhotoSwipe의 다양한 옵션을 적용하여 원하는 이미지 갤러리 효과를 구현해보세요. 자세한 사용 방법은 공식 문서를 참조하시기 바랍니다.

참고 자료:

// 이곳에 예시 코드를 작성하세요
console.log('Hello, World!');

이상으로 PhotoSwipe를 이용한 이미지 컴퍼스 효과 구현 방법에 대해 알아보았습니다.