【Labs】スマホ対応レスポンシブデザイン カルーセルスライダー【jCarouselLite】 - web design lab
にほんブログ村 デザインブログ Webデザインへ PVアクセスランキング にほんブログ村

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


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

こんにちは(・∀・)

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

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】スマホ対応レスポンシブデザイン カルーセルスライダー


にほんブログ村 デザインブログ Webデザインへ PVアクセスランキング にほんブログ村