menu
menu

キーワード検索

 

前月(10月)の人気記事トップ10

  1. ( 1-) 【CSS Tips】CSSだけでドロップダウンメニュー
  2. ( 2-) 【CSS Tips】CSSだけでサイズ可変・スマホ対応のアコーディオン
  3. ( 3-) 【HTML5】スマホサイトの作成・基本編
  4. ( 7↑) 【HTML5】HTML5・ページ作成の基本
  5. ( 6↑)【jQuery入門】jQueryで日時を表示
  6. ( 5↓) 【jQuery】表示しているブラウザの高さを取得してCSSのheightに指定
  7. ( 4↓) 【CSS Tips】CSSだけでブロック要素の表示非表示(トグルボタン)
  8. ( 8-) 【Mac Tips】MacにInkscapeをインストール
  9. ( 9-) 【MySQL】Windows 10にMySQLをインストール
  10. (10-) 【CSS Tips】スマホサイト向け横にスクロールするナビゲーション

【jCarouselLite】スマホ対応レスポンシブなカルーセルスライダー

  • Labs

【jCarouselLite】スマホ対応レスポンシブなカルーセルスライダー

こんにちは(・∀・)

jQueryライブラリを使用したサンプルをご紹介します。今回使用するライブラリはjCarouselLiteです。レスポンシブでスマホ・PCどちらにも対応したカルーセルスライダーです。

Contents

  1. サンプル
  2. サンプル
1. サンプル
HTML

Google Hosted LibrariesからjQuery 1.x snippetを<head>内に読み込みます。


<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

次のリンク先からファイルをダウンロードします。

jCarouselLite

ダウンロードボタンをクリックしてVersion 1.1のFull Sourceをクリックします。

コードが表示されたらすべてコピーして名前jcarousellite.jsで保存します。

保存したjcarousellite.jsを<head>内に同じく読み込みます。


<script src="jcarousellite.js"></script>

<div class="sample-carousel">
<div class="carousel-main">
<div class="any-class-outer">
<div class="any-class">
<ul>
<li><a href="#"><img src="img/1.png" alt=""></a></li>
<li><a href="#"><img src="img/2.png" alt=""></a></li>
<li><a href="#"><img src="img/3.png" alt=""></a></li>
<li><a href="#"><img src="img/4.png" alt=""></a></li>
</ul>
<!--any-class--></div>
<!--any-class-outer--></div>
<!--carousel-main--></div>
<ul class="carousel-btns">
<li class="prev">&lt;</li>
<li class="next">&gt;</li>
<!--carousel-btns--></ul>
<!--sample-carousel--></div>
CSS

.sample-carousel .carousel-main {
  background: #ccc;
  height: 169px;
  position: relative;
  z-index: 1000;
  overflow: hidden;
}
.sample-carousel .carousel-btns {
  width: 300px;
  margin: 0 auto;
  position: relative;
  z-index: 1001;
  top: -108px;
  overflow: hidden;
  list-style: none;
  display: flex;
  justify-content: space-between;
}
  .sample-carousel .carousel-btns .prev,
  .sample-carousel .carousel-btns .next {
    cursor: pointer;
    font-size: 24px;
    font-family: monospace;
    background: rgba(255,255,255,0.5);
  }
  .sample-carousel .carousel-btns .prev {
    width: 40px;
    height: 40px;
    margin-left: -40px;
    padding: 5px 7px 0 10px;
    box-sizing: border-box;
  }
  .sample-carousel .carousel-btns .next {
    width: 40px;
    height: 40px;
    padding: 5px 5px 0 12px;
    box-sizing: border-box;
  }
.sample-carousel .any-class-outer {
  width: 300px;
  position: absolute;
  left: 50%;
  margin-left: -150px;
  overflow: hidden;
}
.sample-carousel .any-class li {
  width: 300px;
  height: 169px;
}
.sample-carousel .any-class li img {
  width: 100%;
  height: auto;
}
@media (min-width: 769px) {
.sample-carousel .carousel-btns {
  width: 900px;
}
.sample-carousel .any-class-outer {
  width: 1500px;
  position: absolute;
  left: 50%;
  margin-left: -750px;
}
.sample-carousel .any-class {
  width: 1500px;
}
/* ** */}
JavaScript

jcarousellite.jsの先頭に次のコードを追加してください。


$(function() {
$(".any-class").jCarouselLite({
btnNext: ".next",
btnPrev: ".prev"
});
});
Result

サンプルデモはこちら

ブレークポイントは768px以下がスマホサイト、769px以上でPCサイトです。

2. サンプル
HTML

HTMLはサンプルデモ1と共通です。

CSS

.sample-carousel .carousel-main {
  background: #ccc;
  height: 169px;
  position: relative;
  z-index: 1000;
  overflow: hidden;
}
.sample-carousel .carousel-btns {
  width: 300px;
  margin: 0 auto;
  position: relative;
  z-index: 1001;
  top: -108px;
  overflow: hidden;
  display: flex;
  justify-content: space-between;
  list-style: none;
}
  .sample-carousel .carousel-btns .prev,
  .sample-carousel .carousel-btns .next {
    cursor: pointer;
    font-size: 24px;
    font-family: monospace;
    background: rgba(255,255,255,0.5);
  }
  .sample-carousel .carousel-btns .prev {
    width: 40px;
    height: 40px;
    margin-left: -40px;
    padding: 5px 7px 0 10px;
    box-sizing: border-box;
  }
  .sample-carousel .carousel-btns .next {
    width: 40px;
    height: 40px;
    padding: 5px 5px 0 12px;
    box-sizing: border-box;
  }
.sample-carousel .any-class-outer {
  width: 300px;
  position: absolute;
  left: 50%;
  margin-left: -150px;
  overflow: hidden;
}
.sample-carousel .any-class ul {
  list-style: none;
}
.sample-carousel .any-class li img {
  width: 100%;
  height: auto;
}
@media (min-width: 479px) {
.sample-carousel .carousel-btns {
  width: 480px;
}
.sample-carousel .carousel-main {
  height: 270px;
}
.sample-carousel .carousel-btns {
  width: 480px;
  top: -160px;
}
.sample-carousel .any-class-outer {
  width: 480px;
  position: absolute;
  left: 50%;
  margin-left: -240px;
}
.sample-carousel .any-class {
  width: 480px;
}
/* ** */}
@media (min-width: 769px) {
.sample-carousel .carousel-btns {
  width: 960px;
}
.sample-carousel .carousel-main {
  height: 540px;
}
.sample-carousel .carousel-btns {
  width: 960px;
  top: -300px;
}
.sample-carousel .any-class-outer {
  width: 960px;
  position: absolute;
  left: 50%;
  margin-left: -480px;
}
.sample-carousel .any-class {
  width: 960px;
}
/* ** */}
JavaScript

JavaScriptはサンプルデモ1と共通です。

Result

サンプルデモはこちら

こちらもブレークポイントは768px以下がスマホサイト、769px以上でPCサイトです。


関連リンク

【slick】スマホ対応レスポンシブなカルーセルスライダー
【simplyScroll v2】スマホ対応レスポンシブなカルーセルスライダー

  • カテゴリー:Labs