前提
質問
- scrollYStart1とscrollYStart2の値は-〇〇〇pxになると思います。これは要素のどの位置に相当しますか?
- css:background-position-y部分の処理内容を理解できている気がしません。どのような処理なのか教えてください
該当のソースコード
HTML
1<div class="wrap"> 2 <div class="parallax bg-01" id="parallax-01">背面:パララックスエリア 3 </div> 4 <div class="content">前面:コンテンツエリア 5 </div> 6 <div class="parallax bg-02" id="parallax-02">背面:パララックスエリア 7 </div> 8 <div class="content">前面:コンテンツエリア 9 </div> 10</div>
JavaScript
1$(function(){ 2 var target1 = $("#parallax-01"); 3 var targetPosOT1 = target1.offset().top; 4 var target2 = $("#parallax-02"); 5 var targetPosOT2 = target2.offset().top; 6 var targetFactor = 0.5; 7 var windowH = $(window).height(); 8 var scrollYStart1 = targetPosOT1 - windowH; // ここです 9 var scrollYStart2 = targetPosOT2 - windowH; 10 $(window).on('scroll',function(){ 11 var scrollY = $(this).scrollTop(); 12 if(scrollY > scrollYStart1){ 13 target1.css('background-position-y', (scrollY - targetPosOT1) * targetFactor + 'px'); // ここです 14 }else{ 15 target1.css('background-position','center top'); 16 } 17 if(scrollY > scrollYStart2){ 18 target2.css('background-position-y', (scrollY - targetPosOT2) * targetFactor + 'px'); 19 }else{ 20 target2.css('background-position','center top'); 21 } 22 }); 23});
「scrollYStart1とscrollYStart2の値は-〇〇〇pxになると思います。」とのことですが、当方の環境で試したところ、-221、323でした。
scrollYStart1の値しか確認していませんでした。両方確認してみます。
回答1件
あなたの回答
tips
プレビュー