Owl Carousel フィルタリングの実装方法


方法1: カテゴリごとにスライドをフィルタリングする

まず、各スライドにカテゴリを指定します。例えば、画像のカテゴリを「自然」「都市」「風景」などに分けることができます。次に、フィルタリング用のボタンやドロップダウンメニューを追加し、ユーザーが選択したカテゴリに基づいてスライドをフィルタリングします。

以下は、HTMLとJavaScriptのコード例です。

<!-- Owl CarouselのHTML構造 -->
<div class="owl-carousel">
  <div class="slide" data-category="nature"><img src="nature1.jpg"></div>
  <div class="slide" data-category="city"><img src="city1.jpg"></div>
  <div class="slide" data-category="landscape"><img src="landscape1.jpg"></div>
  <!-- 他のスライド -->
</div>
<!-- フィルタリング用のボタンやドロップダウンメニュー -->
<button onclick="filterSlides('nature')">自然</button>
<button onclick="filterSlides('city')">都市</button>
<button onclick="filterSlides('landscape')">風景</button>
<script>
  function filterSlides(category) {
    $('.owl-carousel .slide').hide(); // すべてのスライドを非表示にする
    $('.owl-carousel .slide[data-category="' + category + '"]').show(); // 選択したカテゴリのスライドを表示する
  }
</script>

方法2: キーワードに基づいてスライドをフィルタリングする

スライドにキーワードを関連付け、キーワードを入力するとそれに一致するスライドのみが表示されるようにします。以下は、フィルタリング用のテキストボックスとボタンを追加する方法の例です。

<!-- Owl CarouselのHTML構造 -->
<div class="owl-carousel">
  <div class="slide" data-keywords="nature trees"><img src="nature1.jpg"></div>
  <div class="slide" data-keywords="city buildings"><img src="city1.jpg"></div>
  <div class="slide" data-keywords="landscape mountains"><img src="landscape1.jpg"></div>
  <!-- 他のスライド -->
</div>
<!-- フィルタリング用のテキストボックスとボタン -->
<input type="text" id="keywordInput">
<button onclick="filterSlidesByKeyword()">フィルタリング</button>
<script>
  function filterSlidesByKeyword() {
    var keyword = $('#keywordInput').val().toLowerCase();
    $('.owl-carousel .slide').hide(); // すべてのスライドを非表示にする
    $('.owl-carousel .slide[data-keywords*="' + keyword + '"]').show(); // キーワードに一致するスライドを表示する
  }
</script>