2016-09-15 4 views
-5

100ピクセルを超えてスクロールしたときにIDを表示するには、次のコードがあります。JavaScriptでパーセント値を使用する

window.onscroll = function() {stickyHeader()}; 

function stickyHeader() { 
    if (document.body.scrollTop > 100 document.documentElement.scrollTop > 100) { 
     document.getElementById(sticky-header).style.visibility= visible; 
    } else { 
     document.getElementById(sticky-header).style.visibility= hidden; 
    } 
} 

scrollTop >100の100ピクセルをページの80%に変更するにはどうすればよいですか?

+1

複数ページの高さは? – epascarello

+1

おそらく '(document.documentElement.scrollHeight - window.innerHeight)* 0.8'が必要になります... –

答えて

0

文字列を引用していないため、論理演算子||がないため、コードを更新しました。

ユーザーが80%の道をスクロールしたら、次のコードで表示を反転する必要があります。 0.8による

window.onscroll = function() {stickyHeader()}; 
 

 
function stickyHeader() { 
 

 
    var height = (document.body.scrollHeight, document.documentElement.scrollHeight) * 0.8; 
 

 
    if (document.body.scrollTop > height || document.documentElement.scrollTop > height) { 
 
     document.getElementById('sticky-header').style.visibility= 'visible'; 
 
    } else { 
 
     document.getElementById('sticky-header').style.visibility= 'hidden'; 
 
    } 
 
}
<div style="position:fixed" id="sticky-header"> 
 
sticky-header 
 
</div> 
 
<p style="height:4000px"> 
 
</p> 
 
.

関連する問題