menu
menu

キーワード検索

 

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

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

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

  • Labs

jQuery

こんにちは(・∀・)

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

1. サンプル
HTML

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


<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/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 {
	width: 100%;
}
.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;
}
	.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 {
		float: left;
		width: 28px;
		height: 40px;
		padding: 3px 7px 0 8px;
	}
	.sample-carousel .carousel-btns .next {
		float: right;
		width: 28px;
		height: 40px;
		padding: 3px 5px 0 10px;
	}
.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 only screen and (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 {
	width: 100%;
}
.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;
}
	.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 {
		float: left;
		width: 28px;
		height: 40px;
		padding: 3px 7px 0 8px;
	}
	.sample-carousel .carousel-btns .next {
		float: right;
		width: 28px;
		height: 40px;
		padding: 3px 5px 0 10px;
	}
.sample-carousel .any-class-outer {
	width: 300px;
	position: absolute;
	left: 50%;
	margin-left: -150px;
	overflow: hidden;
}
.sample-carousel .any-class li img {
	width: 100%;
	height: auto;
}
@media only screen and (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 only screen and (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

サンプルデモ2はこちら

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


関連リンク

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

  • カテゴリー:Labs