Este componente es un elemento decorativo que se mueve según el scroll de la página.
Archivos Usados
1.
page.html.twig
Twig
web/themes/custom/depura_theme/templates/layout/
Component
page.html.twig
Twig
web/themes/custom/depura_theme/templates/layout/
Component
<div id="progress-scroll" class="progress-scroll"> <div class="progress-scroll__bar bg-orange pb-1"></div> </div>
2.
progress-scroll.js
JavaScript
web/themes/custom/depura_theme/frontend/js/components/
Logic Frontend
progress-scroll.js
JavaScript
web/themes/custom/depura_theme/frontend/js/components/
Logic Frontend
function progressScroll(){
const $progressScroll = $('.progress-scroll__bar');
let scrollTop = document.documentElement.scrollTop;
let height = document.documentElement.scrollHeight - window.innerHeight;
let progress = scrollTop / height;
$progressScroll.css('width', progress * 100 + '%');
}
window.addEventListener('scroll', function() {
progressScroll();
});
window.addEventListener('resize', function() {
progressScroll();
});
3.
_progress-scroll.scss
SCSS
web/themes/custom/depura_theme/frontend/scss/theme/atoms/
Block
_progress-scroll.scss
SCSS
web/themes/custom/depura_theme/frontend/scss/theme/atoms/
Block
.progress-scroll {
&__bar {
transition: all .32s ease-in-out;
width: 0;
}
}