JQuery未習熟の者です。
inview.jsを利用して、一定のスクロールをすると下記URLのように順番に回転しながら表示させたいと思っていと思っております。
参考URL
https://qiita.com/noqua/items/8d739b256841e47bf39c
現状は横並びにして回転しながら表示させるところまでいきましたが、『順番に』というところでつまずいています。
cssで似た表示にはできたのですが、当たり前ですが、1度表示されると表示されたままになってしまいますので、inview.jsを使用してスクロールの度に作動するようにしたいと思っております。
現状のコード
HTML
1<div class="container"> 2<div class="row works-content"> 3 4<div class="col-md-4 text-center"> 5<div class="turn"> 6<span class="turn-mv01 mv01 amima01"> 7<img src="<?php bloginfo('template_directory'); ?>/assets/img/works-1.png"> 8</span> 9</div> 10</div><!-- .col --> 11 12<div class="col-md-4 text-center"> 13<div class="turn"> 14<span class="turn-mv01 mv01 amima02"> 15<img src="<?php bloginfo('template_directory'); ?>/assets/img/works-2.png"> 16</span> 17</div> 18</div><!-- .col --> 19 20<div class="col-md-4 text-center"> 21<div class="turn"> 22<span class="turn-mv01 mv01 amima03"> 23<img src="<?php bloginfo('template_directory'); ?>/assets/img/works-3.png"> 24</span> 25</div> 26</div><!-- .col --> 27 28</div><!-- .row --> 29</div><!-- .container -->
CSS
1.col-md-4 { 2 margin: 0; 3} 4.works-content { 5 overflow: hidden; 6} 7.turn { 8 transition: .8s; 9} 10.turn-mv01 { 11 transform: rotateY(0deg); 12 -webkit-transform: rotateY(0deg); 13} 14.mv01 { 15 transform: rotateY(360deg); 16 -webkit-transform: rotateY(360deg); 17 display: none; 18}
js
1<script> 2$('.turn').on('inview', function(event, isInView, visiblePartX, visiblePartY) { 3 console.log(isInView); 4 if(isInView){ 5 $(this).stop().addClass('mv01'); 6 } 7 else{ 8 $(this).stop().removeClass('mv01'); 9 } 10}); 11 $('.turn').on('inview', function(event, isInView) { 12 if (isInView) { 13 $(item); 14 } 15 }); 16 function item() { 17 $('.mv01:hidden').first().fadeIn(100, function () { 18 item(); 19 }); 20 } 21</script>
乱文にて大変恐縮ですが、ご存知の方がいらっしゃいましたら、ご教授お願い致します。
経過報告
js
1 $('.turn').on('inview', function(event, isInView) { 2 if (isInView) { 3 $(item); // 表示されたら実行するアクション(関数)名 4 } 5 }); 6 function item() { 7 $('.mv01:hidden').first().fadeIn(100, function () { 8 item(); 9 }); 10 }
を入れ、.mv01にdisplay: none; を入れる事で順番に表示されるようにはなりましたが、代わりに回転がなくなり、スクロールで画面から外れた後元に戻ると回転だけの元の動作に戻ってしまいました。
引き続きお願い致します。
あなたの回答
tips
プレビュー