前提・実現したいこと
画面をスクロールすると、右から要素を出現させたいと思っています。
(該当ソースコードの背景色グレーの部分です)
動きの参考にしたのは以下のサイトですが、記述通りに書いたはずが動いてくれません。
https://coco-factory.jp/ugokuweb/jscss/
該当のソースコード
HTML
1<div class="height"></div> 2 3<div class="box"> 4<div class="box__bg__outer"><div class="box__bg__inner fadeRightTrigger"></div></div> 5<h3>タイトルテキスト</h3> 6<p class="image"></p> 7<p>テキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキストテキスト</p> 8</div> 9<script src="https://code.jquery.com/jquery-3.4.1.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
css
1body { 2 overflow-x: hidden; 3} 4 5.height { 6 min-height: 1500px; 7} 8 9.box { 10 position:relative; 11 margin: 0 auto; 12 max-width: 600px; 13 z-index: 1; 14} 15 16.box__bg__outer { 17 position:absolute; 18 top:0; 19 right:0; 20 max-width: 400px; 21 background: #ccc; 22 margin-left: 120px; 23 border-radius: 30px 0px 0px 30px; 24} 25 26.box__bg__inner { 27 width:calc(100vw - 120px); 28 height: 399px; 29 background: #ccc; 30 border-radius: 30px 0px 0px 30px; 31 z-index:0; 32} 33 34.box p.image { 35 display: inline-block; 36 position: relative; 37 min-width: 400px; 38 min-height:100px; 39 background: #000; 40 padding: 0; 41 margin: 0; 42 z-index: 1; 43} 44 45.box h3 { 46 position:relative; 47 max-width: 315px; 48 font-size: 18px; 49 letter-spacing: 0.54px; 50 line-height: 30px; 51 padding-top: 30px; 52 margin: 0 auto 22px auto; 53} 54 55.box p { 56 position:relative; 57 max-width: 315px; 58 margin: 22px auto 18px auto; 59 font-size: 14px; 60 font-weight: 300; 61 line-height: 22px; 62}
Jquery
1function fadeAnime(){ 2 3 $('.fadeRightTrigger').each(function(){ //fadeRightTriggerというクラス名が 4 var elemPos = $(this).offset().top-50; 5 var scroll = $(window).scrollTop(); 6 var windowHeight = $(window).height(); 7 if (scroll >= elemPos - windowHeight){ 8 $(this).addClass('fadeRight');// 画面内に入ったらfadeRightというクラス名を追記 9 }else{ 10 $(this).removeClass('fadeRight');// 画面外に出たらfadeRightというクラス名を外す 11 } 12 }); 13 } 14 15// 画面をスクロールをしたら動かしたい場合の記述 16 $(window).scroll(function (){ 17 fadeAnime();/* アニメーション用の関数を呼ぶ*/ 18 });// ここまで画面をスクロールをしたら動かしたい場合の記述
試したこと
現在は「.box__bg__inner」のクラス中に「.fadeRightTrigger」をつけていますが、
記述箇所に問題があるのかと思い、「.box__bg__outer」や「.box」に記述を移動してみましたが動かないままです。
動かしたい要素に「.fadeRightTrigger」を付属するだけで動くはずなので、なにか元々のコードの書き方に問題があるのでしょうか…
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/11/09 02:37