Этот код делает этим индикатором прокрутки.
Не могли бы вы помочь мне выяснить, как здесь вычисляется переменная scrolled
?
Пожалуйста, объясните, почему clientHeight
вычитается из scrollHeight
, а переменная winScroll
делится на height
, затем умножается на 100
?
// When the user scrolls the page, execute myFunction
window.onscroll = function() {
myFunction()
};
function myFunction() {
var winScroll = document.body.scrollTop || document.documentElement.scrollTop;
var height = document.documentElement.scrollHeight - document.documentElement.clientHeight;
var scrolled = (winScroll / height) * 100;
document.getElementById("myBar").style.width = scrolled + "%";
}
<div class="header">
<h2>Scroll Indicator</h2>
<div class="progress-container">
<div class="progress-bar" id="myBar"></div>
</div>
</div>
<div class="content">
<h3>Scroll Down to See The Effect</h3>
<p>100 text line</p>
</div>