スクロールをするとかっこよく要素が出てくる「jquery.inview.js」(デモあり)
2017.6.9
JavaScript, jQuery
スクロールすると要素がふわっと出現していくサイト、オシャレですよねー!
あれやってみたいなー!って思ってたんですが、「inview.js」というjQueryでできるんですね。
こんなに簡単にできたんだなぁということで、こちらのブログ(North-Geekさま)を参考に、デモを作ってみました。
デモ
インストール
ひとまず「jquery.inview.js」から一式をダウンロードします。
設定
必要なjsやcssを適当なディレクトリに格納し、リンクをhead内に入れていきます。
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <script type="text/javascript" src="js/jquery.inview.js"></script>
私がデモサイトで使った効果は「フェードイン」「フェードイン+上移動」「3D回転」です。一例としてフェードインの設定を掲載します。
フェードインの場合
js設定
<script type="text/javascript">
//フェードイン
$(function() {
$('.ef-fade01').on('inview', function(event, isInView, visiblePartX, visiblePartY) {
console.log(isInView);
if(isInView){
$(this).stop().addClass('fade01');
}
else{
$(this).stop().removeClass('fade01');
}
});
});
</script>
html設定
<!-- =======.cont01 -->
<section class="effect">
<h2>フェードイン</h2>
<ul>
<li class="ef-fade01"><img src="img/nuko01.jpg"></li>
<li class="ef-fade01"><img src="img/nuko02.jpg"></li>
<li class="ef-fade01"><img src="img/nuko03.jpg"></li>
</ul>
<ul>
<li class="ef-fade01"><img src="img/nuko01.jpg"></li>
<li class="ef-fade01"><img src="img/nuko02.jpg"></li>
<li class="ef-fade01"><img src="img/nuko03.jpg"></li>
</ul>
</section>
<!-- end*.cont01 -->
css設定
.effect {
overflow: hidden;
}
.effect li {
transition: .8s;
}
.ef-fade01 {
opacity: 0;
}
.fade01 {
opacity: 1.0;
}
.effectについている設定はどの効果でも共通のものです。