making user index look cool
This commit is contained in:
		@@ -5,4 +5,7 @@
 | 
				
			|||||||
        <h1 class="user-index-h1">Hello, <span class="outlined-text"><template name="username"></template></span>.</h1>
 | 
					        <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>
 | 
					        <h2 class="user-index-h2">What would you like to watch?</h2>
 | 
				
			||||||
    </div>
 | 
					    </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 {
 | 
					.outlined-text {
 | 
				
			||||||
    -webkit-text-fill-color: transparent;
 | 
					    -webkit-text-fill-color: transparent;
 | 
				
			||||||
    -webkit-text-stroke: 2.2px #8c00ff;
 | 
					    -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 */
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user