HTMLの書き方
head終了タグ直前に自作のCSSを読み込みます。
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/Modaal/0.4.4/css/modaal.min.css">
<link rel="stylesheet" type="text/css" href="css/6-2-6.css">
body内のギャラリーを表示させたい場所にHTMLを記載します。
<ul class="gallery"><!--リンク先は表示させたいエリアのid名を指定します。-->
<li><a href="#gallery-1" class="gallery-list"><img src="img/01.jpg" alt=""></a></li>
<li><a href="#gallery-2" class="gallery-list"><img src="img/05.jpg" alt=""></a></li>
<li><a href="#gallery-3" class="gallery-list"><img src="img/09.jpg" alt=""></a></li>
</ul>
<section id="gallery-1" class="hide-area"><!--id 名にサムネイル画像のリンク先と同じ名前を指定します。事前に非表示にするためhide-areaというクラス名も追加します。-->
<p><img src="img/01.jpg" alt=""><span class="caption">画像の説明</span></p>
<p><img src="img/02.jpg" alt=""><span class="caption">画像の説明</span></p>
<p><img src="img/03.jpg" alt=""><span class="caption">画像の説明</span></p>
<p><img src="img/04.jpg" alt=""><span class="caption">画像の説明</span></p>
</section>
<section id="gallery-2" class="hide-area">
<p><img src="img/05.jpg" alt=""><span class="caption">画像の説明</span></p>
<p><img src="img/06.jpg" alt=""><span class="caption">画像の説明</span></p>
<p><img src="img/07.jpg" alt=""><span class="caption">画像の説明</span></p>
<p><img src="img/08.jpg" alt=""><span class="caption">画像の説明</span></p>
</section>
body 終了タグ直前に jQuery、Modaal、動きを制御する自作のJS の3 つを読み込みます。
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Modaal/0.4.4/js/modaal.min.js"></script>
<!--自作のJS-->
<script src="js/6-2-6.js"></script>
CSSの書き方
/*===モーダル表示のためのcss */
.hide-area{/*モーダル表示をする場所をあらかじめ隠す*/
display: none;
}
.modaal-fullscreen .modaal-content-container{/*full画面の色設定*/
background: #333;
color: #fff;
text-align: center;
}
.modaal-fullscreen .modaal-close{/*ボタンの色、位置*/
background:none;
right:20px;
}
/*クローズボタンの×の色変更*/
.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before{
background:#666;
}
/*キャプション*/
.caption{
display: block;
padding: 10px 0;
}
/*=== サムネイル表示のためのcss */
.gallery{/*ベースになるギャラリーを横並びに*/
display: flex;
justify-content: space-between;
}
.gallery li{
width:33.333%;
padding: 0 10px;
list-style:none;
}
/*画像の横幅を100%にしてレスポンシブ化*/
img{
max-width:100%;
height:auto;
vertical-align: bottom;/*画像の下にできる余白を削除*/
}
JSの書き方
//画像をクリックしたら現れる画面の設定
$(".gallery-list").modaal({
fullscreen:'true', //フルスクリーンモードにする
before_open:function(){// モーダルが開く前に行う動作
$('html').css('overflow-y','hidden');/*縦スクロールバーを出さない*/
},
after_close:function(){// モーダルが閉じた後に行う動作
$('html').css('overflow-y','scroll');/*縦スクロールバーを出す*/
}
});
HTMLの書き方
head終了タグ直前に自作のCSSを読み込みます。
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/slick-carousel@1.8.1/slick/slick.css">
<link rel="stylesheet" type="text/css" href="css/6-2-5.css">
body内のスライドを表示させたい場所にHTMLを記載します。
<ul class="gallery">
<li><img src="img/01.jpg" alt=""></li>
<li><img src="img/02.jpg" alt=""></li>
<li><img src="img/03.jpg" alt=""></li>
</ul>
<ul class="choice-btn">
<li><img src="img/01.jpg" alt=""></li>
<li><img src="img/02.jpg" alt=""></li>
<li><img src="img/03.jpg" alt=""></li>
</ul>
body 終了タグ直前に jQuery、slick、動きを制御する自作のJS の3 つを読み込みます。
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/slick-carousel@1.8.1/slick/slick.min.js"></script>
<!--自作のJS-->
<script src="js/6-2-5.js"></script>
CSSの書き方
/*==================================================
スライダーのためのcss
===================================*/
/*画像の横幅を100%にしてレスポンシブ化*/
img{
width: 100%;
height: auto;
vertical-align: bottom;/*画像の下にできる余白を削除*/
}
/*メイン画像下に余白をつける*/
.gallery{
margin:0 0 5px 0;
}
.gallery li{
list-style:none;
}
/*矢印の設定*/
/*戻る、次へ矢印の位置*/
.slick-prev,
.slick-next {
position: absolute;/*絶対配置にする*/
z-index: 3;
top: 42%;
cursor: pointer;/*マウスカーソルを指マークに*/
outline: none;/*クリックをしたら出てくる枠線を消す*/
border-top: 2px solid #ccc;/*矢印の色*/
border-right: 2px solid #ccc;/*矢印の色*/
height: 25px;
width: 25px;
}
.slick-prev {/*戻る矢印の位置と形状*/
left:2.5%;
transform: rotate(-135deg);
}
.slick-next {/*次へ矢印の位置と形状*/
right:2.5%;
transform: rotate(45deg);
}
/*選択するサムネイル画像の設定*/
.choice-btn li{
cursor: pointer;
outline: none;
background:#333;
list-style:none;
}
.choice-btn li img{
opacity: 0.4;/*選択されていないものは透過40%*/
}
.choice-btn li.slick-current img{
opacity: 1;/*選択されているものは透過しない*/
}
JSの書き方
//上部画像の設定
$('.gallery').slick({
infinite: true, //スライドをループさせるかどうか。初期値はtrue。
fade: true, //フェードの有効化
arrows: true,//左右の矢印あり
prevArrow: '<div class="slick-prev"></div>',//矢印部分PreviewのHTMLを変更
nextArrow: '<div class="slick-next"></div>',//矢印部分NextのHTMLを変更
asNavFor: '.choice-btn', //連動させるサムネイルのクラス名
});
//選択画像の設定
$('.choice-btn').slick({
infinite: true, //スライドをループさせるかどうか。初期値はtrue。
slidesToShow: 4, //表示させるスライドの数
focusOnSelect: true, //フォーカスの有効化
prevArrow: '<div class="slick-prev"></div>',//矢印部分PreviewのHTMLを変更
nextArrow: '<div class="slick-next"></div>',//矢印部分NextのHTMLを変更
asNavFor: '.gallery', //連動させるスライドショーのクラス名
});
HTMLの書き方
1.head終了タグ直前に自作のCSSを読み込みます。
<link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/slick-carousel@1.8.1/slick/slick.css">
<link rel="stylesheet" type="text/css" href="css/6-2-4.css">
2.body内のスライドを表示させたい場所にHTMLを記載します。
<ul class="gallery">
<li><img src="img/01.jpg" alt=""></li>
<li><img src="img/02.jpg" alt=""></li>
<li><img src="img/03.jpg" alt=""></li>
</ul>
<ul class="choice-btn">
<li><img src="img/01.jpg" alt=""></li>
<li><img src="img/02.jpg" alt=""></li>
<li><img src="img/03.jpg" alt=""></li>
</ul>
3.body 終了タグ直前に jQuery、slick、動きを制御する自作のJS の3 つを読み込みます。
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/slick-carousel@1.8.1/slick/slick.min.js"></script>
<!--自作のJS-->
<script src="js/6-2-4.js"></script>
CSSの書き方
/*==================================================
スライダーのためのcss
===================================*/
/*画像の横幅を100%にしてレスポンシブ化*/
img{
width: 100%;
height: auto;
vertical-align: bottom;/*画像の下にできる余白を削除*/
}
/*メイン画像下に余白をつける*/
.gallery{
margin:0 0 5px 0;
}
.gallery li{
list-style:none;
}
/*矢印の設定*/
/*戻る、次へ矢印の位置*/
.slick-prev,
.slick-next {
position: absolute;/*絶対配置にする*/
z-index: 3;
top: 42%;
cursor: pointer;/*マウスカーソルを指マークに*/
outline: none;/*クリックをしたら出てくる枠線を消す*/
border-top: 2px solid #ccc;/*矢印の色*/
border-right: 2px solid #ccc;/*矢印の色*/
height: 25px;
width: 25px;
}
.slick-prev {/*戻る矢印の位置と形状*/
left:2.5%;
transform: rotate(-135deg);
}
.slick-next {/*次へ矢印の位置と形状*/
right:2.5%;
transform: rotate(45deg);
}
/*選択するサムネイル画像の設定*/
.choice-btn li{
cursor: pointer;
outline: none;
background:#333;
width:25%!important;
list-style:none;
}
.choice-btn li img{
opacity: 0.4;/*選択されていないものは透過40%*/
}
.choice-btn li.slick-current img{
opacity: 1;/*選択されているものは透過しない*/
}
.choice-btn .slick-track {
transform: unset !important;/*画面幅サイズ変更に伴うサムネイル固定*/
}
JSの書き方
//上部画像の設定
$('.gallery').slick({
infinite: true, //スライドをループさせるかどうか。初期値はtrue。
fade: true, //フェードの有効化
arrows: true,//左右の矢印あり
prevArrow: '<div class="slick-prev"></div>',//矢印部分PreviewのHTMLを変更
nextArrow: '<div class="slick-next"></div>',//矢印部分NextのHTMLを変更
});
//選択画像の設定
$('.choice-btn').slick({
infinite: true, //スライドをループさせるかどうか。初期値はtrue。
slidesToShow: 8, //表示させるスライドの数
focusOnSelect: true, //フォーカスの有効化
asNavFor: '.gallery', //連動させるスライドショーのクラス名
});
//下の選択画像をスライドさせずに連動して変更させる設定。
$('.gallery').on('beforeChange', function(event, slick, currentSlide, nextSlide) {
var index = nextSlide; //次のスライド番号
//サムネイルのslick-currentを削除し次のスライド要素にslick-currentを追加
$(".choice-btn .slick-slide").removeClass("slick-current").eq(index).addClass("slick-current");
});
HTMLの書き方
head終了タグ直前に自作のCSSを読み込みます。
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fancyapps/fancybox@3.5.7/dist/jquery.fancybox.min.css">
<link rel="stylesheet" type="text/css" href="css/6-2-3.css">
body内のギャラリーを表示させたい場所にHTMLを記載します。
チェックボックスの<li>についたクラス名と、画像を内包する<li>のクラス名が一致した要素を表示させます。
<ul class="sort-btn">
<li>
<dl>
<dt>All</dt>
<dd>
<ul>
<li class="all active">全て</li>
</ul>
</dd>
</dl>
</li>
<li>
<dl><dt>Color</dt>
<dd>
<ul>
<li class="color01">Color1</li>
<li class="color02">Color2</li>
<li class="color03">Color3</li>
</ul>
</dd>
</dl>
</li>
<li>
<dl>
<dt>Category</dt>
<dd>
<ul>
<li class="cat01">カテゴリ1</li>
<li class="cat02">カテゴリ2</li>
<li class="cat03">カテゴリ3</li>
</ul>
</dd>
</dl>
</li>
<!--/sort-btn--></ul>
<ul class="grid"><!--1番外側のタグにgrid というクラス名を付与。-->
<li class="item cat01 color01"><!--li には、item というクラス名と並び替え基準となる複数のクラス名(チェックボックスのクラス名と同じ名前)を付与。-->
<div class="item-content"><!--内側のdivには高さを維持するためにitem-contentというクラス名をつける。-->
<a href="img/01.jpg" data-fancybox="group1" data-caption="グループ1キャプション"><img src="img/01.jpg" alt=""></a><!--複数画像をグループ化してサムネ
イル表示させたい場合は、datafancybox="半角英数字で同一のグループ名"、キャプションを入れたい場合はdata-caption="キャプションタイトル"を設定する。-->
</div>
</li>
<li class="item cat01 cat02 color01">
<div class="item-content">
<a href="img/02.jpg" data-fancybox="group2" data-caption="グループ2キャプション"><img src="img/02.jpg" alt=""></a>
</div>
</li>
<li class="item cat03 color02">
<div class="item-content">
<a href="img/03.jpg" data-fancybox="group3" data-caption="グループ3キャプション"><img src="img/03.jpg" alt=""></a>
</div>
</li>
</ul>
body 終了タグ直前に jQuery、Muuri で必要なJavaScript、Muuri、fancybox、動きを制御する自作のJS の5 つを読み込みます。
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://unpkg.com/web-animations-js@2.3.2/web-animations.min.js"></script>
<script src="https://unpkg.com/muuri@0.8.0/dist/muuri.min.js"></script>
<script src="https://cdn.jsdelivr.net/gh/fancyapps/fancybox@3.5.7/dist/jquery.fancybox.min.js"></script>
<!--自作のJS-->
<script src="js/6-2-3.js"></script>
CSSの書き方
/*==================================================
ギャラリーのためのcss
===================================*/
/*===並び替えボタンチェックマークのCSS*/
.sort-btn{
background: #f3f3f3;
padding: 20px;
margin:50px 0;
display: flex;
justify-content: center;
flex-wrap: wrap;
}
.sort-btn dt{
font-weight: bold;
margin:0 0 10px 0;
}
.sort-btn dd{
margin:0 0 10px 0;
}
.sort-btn ul{
display: flex;
flex-wrap: wrap;
}
.sort-btn li{
margin:0 10px;
list-style:none;
}
.sort-btn ul li{
position: relative;
cursor: pointer;
padding:0 0 0 30px;
margin:0 10px 0 0;
}
/*横幅が810px以下になった際の指定*/
@media only screen and (max-width: 810px) {
.sort-btn li{
width:100%;
margin:0;
}
.sort-btn ul li{
width:auto;
}
}
/*チェックマークの設定*/
.sort-btn ul li::before{
content:'';
position: absolute;
left:0;
width:20px;
height:20px;
border:2px solid #ccc;
}
.sort-btn ul li.active::after{/*現在地=activeというクラス名がついたらチェックマークを出現*/
content:'';
position: absolute;
left:5px;
top:0;
/*チェックマークの色や形*/
border-left:2px solid #333;
border-bottom:2px solid #333;
width:16px;
height:9px;
transform:rotate(-45deg);
}
/*===Muuriのレイアウトのための調整 */
.grid {
position: relative;/*並び替えの基準点を指定*/
}
/*各画像の横幅などの設定*/
.item {
display: block;
position: absolute;
width: 33%;/*横並びで3つ表示*/
padding:0 10px 10px 10px;/*画像に余白をつける*/
z-index: 1;
list-style:none;
}
/*内側のボックスの高さが崩れないように維持*/
.item-content {
position: relative;
width: 100%;
height: 100%;
}
/*画像の横幅を100%にしてレスポンシブ化*/
.grid img{
width:100%;
height:auto;
vertical-align: bottom;/*画像の下にできる余白を削除*/
}
/*横幅が768px以下になった際の指定*/
@media only screen and (max-width: 768px) {
.item {
width: 49.5%;/*横並びで2つ表示*/
padding: 0 5px 10px 5px;
}
}
/*===fancyboxサムネイル背景と画像選択時の枠線の指定*/
.fancybox-thumbs {
background: transparent!important;
}
.fancybox-thumbs__list a:before {
border: 6px solid #FA999B;
}
JSの書き方
$(window).on('load',function(){ //画面遷移時にギャラリーの画像が被らないように、すべての読み込みが終わった後に実行する
//===Muuriギャラリープラグイン設定
var grid = new Muuri('.grid', {
//アイテムの表示速度※オプション。入れなくても動作します
showDuration: 600,
showEasing: 'cubic-bezier(0.215, 0.61, 0.355, 1)',
hideDuration: 600,
hideEasing: 'cubic-bezier(0.215, 0.61, 0.355, 1)',
// アイテムの表示/非表示状態のスタイル※オプション。入れなくても動作します
visibleStyles: {
opacity: '1',
transform: 'scale(1)'
},
hiddenStyles: {
opacity: '0',
transform: 'scale(0.5)'
}
});
//===並び替えボタン設定
$('.sort-btn ul li').on('click',function(){//並び替えボタンをクリックしたら
var className = $(this).attr("class")//クリックしたボタンのクラス名を取得
className = className.split(' '); //「.sort-btn ul li」のクラス名を分割して配列にする
//ボタンにクラス名activeがついている場合
if($(this).hasClass("active")){
if(className[0] != "all"){ //ボタンのクラス名がallでなければ
$(this).removeClass("active"); //activeクラスを消す
var selectElms = $(".sort-btn ul li.active"); //ボタン内にactiveクラスがついている要素を全て取得
if(selectElms.length == 0){ //取得した配列内にactiveクラスがついている要素がなければ
$(".sort-btn ul li.all").addClass("active"); //ボタンallにactiveを追加し
grid.show(''); //ギャラリーの全ての画像を表示
}else{
filterDo(); //取得した配列内にactiveクラスがついている要素があれば並び替えを行う
}
}
}
//ボタンにクラス名activeがついていない場合
else{
if(className[0] == "all"){ //ボタンのクラス名にallとついていたら
$(".sort-btn ul li").removeClass("active"); //ボタンのli要素の全てのactiveを削除し
$(this).addClass("active"); //allにactiveクラスを付与
grid.show(''); //ギャラリーの全ての画像を表示
}else{
if($(".all").hasClass("active")){ //allクラス名にactiveクラスが付いていたら
$(".sort-btn ul li.all").removeClass("active");//ボタンallのactiveクラスを消し
}
$(this).addClass("active"); //クリックしたチェックボックスへactiveクラスを付与
filterDo(); //並び替えを行う
}
}
});
//===画像の並び替え設定
function filterDo(){
var selectElms = $(".sort-btn ul li.active"); //全てのボタンのactive要素を取得
var selectElemAry = []; //activeクラスがついているボタンのクラス名(sortXX)を保存する配列を定義
$.each(selectElms, function(index, selectElm) {
var className = $(this).attr("class") //activeクラスがついている全てのボタンのクラス名(sortXX)を取得
className = className.split(' '); //ボタンのクラス名を分割して配列にし、
selectElemAry.push("."+className[0]); //selectElemAry配列に、チェックのついたクラス名(sortXX)を追加
})
str = selectElemAry.join(','); //selectElemAry配列に追加されたクラス名をカンマ区切りでテキストにして
grid.filter(str); //grid.filter(str);のstrに代入し、ボタンのクラス名とliにつけられたクラス名が一致したら出現
}
});
HTMLの書き方
head終了タグ直前に自作のCSSを読み込みます。
<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/fancyapps/fancybox@3.5.7/dist/jquery.fancybox.min.css">
<link rel="stylesheet" type="text/css" href="css/6-2-2.css">
body内のギャラリーを表示させたい場所にHTMLを記載します。
ボタンの<li>についたクラス名と、画像を内包する<li>のクラス名が一致した要素を表示させます。
<ul class="sort-btn">
<li class="sort00 active">全て</li><!--はじめに「全て」ボタンに現在地表示をつけるためactive というクラス名を付与-->
<li class="sort01">グループ1</li>
<li class="sort02">グループ2</li>
<li class="sort03">グループ3</li>
</ul>
<ul class="grid"><!--1番外側のタグにgrid というクラス名を付与。-->
<li class="item sort01"><!--li には、item というクラス名と並び替え基準となるクラス名(ボタンのクラス名と同じ名前)を付与。-->
<div class="item-content"><!--内側のdivには高さを維持するためにitem-contentというクラス名をつける。-->
<a href="img/01.jpg" data-fancybox="group1" data-caption="グループ1キャプション"><img src="img/01.jpg" alt=""></a><!--複数画像をグループ化してサムネ
イル表示させたい場合は、datafancybox="半角英数字で同一のグループ名"、キャプションを入れたい場合はdata-caption="キャプションタイトル"を設定する。-->
</div>
</li>
<li class="item sort02">
<div class="item-content">
<a href="img/02.jpg" data-fancybox="group2" data-caption="グループ2キャプション"><img src="img/02.jpg" alt=""></a>
</div>
</li>
<li class="item sort03">
<div class="item-content">
<a href="img/03.jpg" data-fancybox="group3" data-caption="グループ3キャプション"><img src="img/03.jpg" alt=""></a>
</div>
</li>
</ul>
body 終了タグ直前に jQuery、Muuri で必要なJavaScript、Muuri、fancybox、動きを制御する自作のJS の5 つを読み込みます。
<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script src="https://unpkg.com/web-animations-js@2.3.2/web-animations.min.js"></script>
<script src="https://unpkg.com/muuri@0.8.0/dist/muuri.min.js"></script>
<script src="https://cdn.jsdelivr.net/gh/fancyapps/fancybox@3.5.7/dist/jquery.fancybox.min.js"></script>
<!--自作のJS-->
<script src="js/6-2-2.js"></script>
CSSの書き方
/*==================================================
ギャラリーのためのcss
===================================*/
/*===並び替えボタンのCSS*/
.sort-btn{
display: flex;
justify-content: center;
flex-wrap: wrap;
padding:50px 20px;
}
.sort-btn li{
background:#eee;
list-style:none;
border-radius:10px;
cursor: pointer;
padding: 10px;
margin:0 10px;
}
.sort-btn li.active{/*ボタンに現在地=activeというクラス名がついたら背景色を変更*/
background:#ccc;
}
/*横幅が480px以下になった際の指定*/
@media only screen and (max-width: 480px) {
.sort-btn{
justify-content: space-between;
}
.sort-btn li{
width:48%;
margin:0 0 10px 0;
text-align:center;
}
}
/*===Muuriのレイアウトのための調整 */
.grid {
position: relative;/*並び替えの基準点を指定*/
}
/*各画像の横幅などの設定*/
.item {
display: block;
position: absolute;
width: 33%;/*横並びで3つ表示*/
z-index: 1;
list-style:none;
}
/*内側のボックスの高さが崩れないように維持*/
.item-content {
position: relative;
width: 100%;
height: 100%;
}
/*画像の横幅を100%にしてレスポンシブ化*/
.grid img{
width:100%;
height:auto;
vertical-align: bottom;/*画像の下にできる余白を削除*/
}
/*横幅が768px以下になった際の指定*/
@media only screen and (max-width: 768px) {
.item {
width: 49.5%;/*横並びで2つ表示*/
}
}
/*===fancyboxサムネイル背景と画像選択時の枠線の指定*/
.fancybox-thumbs {
background: transparent!important;
}
.fancybox-thumbs__list a:before {
border: 6px solid #FA999B;
}
JSの書き方
$(window).on('load',function(){ //画面遷移時にギャラリーの画像が被らないように、すべての読み込みが終わった後に実行する
//===Muuriギャラリープラグイン設定
var grid = new Muuri('.grid', {
//アイテムの表示速度※オプション。入れなくても動作します
showDuration: 600,
showEasing: 'cubic-bezier(0.215, 0.61, 0.355, 1)',
hideDuration: 600,
hideEasing: 'cubic-bezier(0.215, 0.61, 0.355, 1)',
// アイテムの表示/非表示状態のスタイル※オプション。入れなくても動作します
visibleStyles: {
opacity: '1',
transform: 'scale(1)'
},
hiddenStyles: {
opacity: '0',
transform: 'scale(0.5)'
}
});
//===並び替えボタン設定
$('.sort-btn li').on('click',function(){ //並び替えボタンをクリックしたら
$(".sort-btn .active").removeClass("active"); //並び替えボタンに付与されているactiveクラスを全て取り除き
var className = $(this).attr("class"); //クラス名を取得
className = className.split(' '); //「sortXX active」のクラス名を分割して配列にする
$("."+className[0]).addClass("active"); //並び替えボタンに付与されているクラス名とギャラリー内のリストのクラス名が同じボタンにactiveクラスを付与
if(className[0] == "sort00"){ //クラス名がsort00(全て)のボタンの場合は、
grid.show(''); //全ての要素を出す
} else { //それ以外の場合は
grid.filter("."+className[0]); //フィルターを実行
}
});
//=== Fancyboxの設定
$('[data-fancybox]').fancybox({
thumbs: {
autoStart: true, //グループのサムネイル一覧をデフォルトで出す。不必要であればfalseに
},
});
});