making user index look cool
This commit is contained in:
parent
b8b4d0ff54
commit
aa2f0f7181
@ -5,4 +5,7 @@
|
||||
<h1 class="user-index-h1">Hello, <span class="outlined-text"><template name="username"></template></span>.</h1>
|
||||
<h2 class="user-index-h2">What would you like to watch?</h2>
|
||||
</div>
|
||||
</header>
|
||||
</header>
|
||||
|
||||
|
||||
<script src="/scripts/pages/user/main.js" defer></script>
|
33
scripts/pages/user/main.js
Normal file
33
scripts/pages/user/main.js
Normal file
@ -0,0 +1,33 @@
|
||||
document.addEventListener('DOMContentLoaded', function () {
|
||||
var headerText = document.getElementById('headerText');
|
||||
var h1 = document.querySelector('.user-index-h1');
|
||||
var h2 = document.querySelector('.user-index-h2');
|
||||
|
||||
// Function to check if an element is in the viewport
|
||||
function isInViewport(element) {
|
||||
var rect = element.getBoundingClientRect();
|
||||
return (
|
||||
rect.top >= 0 &&
|
||||
rect.left >= 0 &&
|
||||
rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) &&
|
||||
rect.right <= (window.innerWidth || document.documentElement.clientWidth)
|
||||
);
|
||||
}
|
||||
|
||||
// Function to handle the scroll event
|
||||
function handleScroll() {
|
||||
if (isInViewport(headerText)) {
|
||||
h1.classList.add('visible');
|
||||
h2.classList.add('visible');
|
||||
} else {
|
||||
h1.classList.remove('visible');
|
||||
h2.classList.remove('visible');
|
||||
}
|
||||
}
|
||||
|
||||
// Attach the handleScroll function to the scroll event
|
||||
window.addEventListener('scroll', handleScroll);
|
||||
|
||||
// Initial check on page load
|
||||
handleScroll();
|
||||
});
|
@ -19,4 +19,16 @@
|
||||
.outlined-text {
|
||||
-webkit-text-fill-color: transparent;
|
||||
-webkit-text-stroke: 2.2px #8c00ff;
|
||||
}
|
||||
}
|
||||
|
||||
.user-index-h1,
|
||||
.user-index-h2 {
|
||||
opacity: 0; /* Initially set opacity to 0 */
|
||||
transform: translateX(-20px); /* Move elements outside the viewport to the left */
|
||||
transition: opacity 0.8s ease, transform 0.8s ease; /* Apply transition effect */
|
||||
}
|
||||
|
||||
.visible {
|
||||
opacity: 1;
|
||||
transform: translateX(0); /* Move elements back to their original position */
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user