Baseline - Eddys Nova Estrutura
This commit is contained in:
+62
@@ -0,0 +1,62 @@
|
||||
/* ==========================================================================
|
||||
EDDY'S CONSTRUCTION - HOME SPECIFIC JS (home.js)
|
||||
Lógica exclusiva para a página inicial (Hero Slider)
|
||||
========================================================================== */
|
||||
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
|
||||
/* Hero Slider (Home) */
|
||||
const slides = document.querySelectorAll('.hero-slider .slide');
|
||||
const prevBtnHome = document.getElementById('prevSlide');
|
||||
const nextBtnHome = document.getElementById('nextSlide');
|
||||
const dotsContainer = document.getElementById('sliderDots');
|
||||
let currentHomeSlide = 0;
|
||||
let homeSlideInterval;
|
||||
|
||||
if (slides.length > 0) {
|
||||
// Cria os pontos (dots) de navegação dinamicamente
|
||||
slides.forEach((_, idx) => {
|
||||
const dot = document.createElement('div');
|
||||
dot.classList.add('dot');
|
||||
if (idx === 0) dot.classList.add('active');
|
||||
dot.addEventListener('click', () => goToHomeSlide(idx));
|
||||
if (dotsContainer) dotsContainer.appendChild(dot);
|
||||
});
|
||||
|
||||
const dots = document.querySelectorAll('.slider-dots .dot');
|
||||
|
||||
function goToHomeSlide(n) {
|
||||
slides[currentHomeSlide].classList.remove('active');
|
||||
if (dots[currentHomeSlide]) dots[currentHomeSlide].classList.remove('active');
|
||||
|
||||
currentHomeSlide = (n + slides.length) % slides.length;
|
||||
|
||||
slides[currentHomeSlide].classList.add('active');
|
||||
if (dots[currentHomeSlide]) dots[currentHomeSlide].classList.add('active');
|
||||
|
||||
resetHomeAutoplay();
|
||||
}
|
||||
|
||||
function nextHomeSlide() {
|
||||
goToHomeSlide(currentHomeSlide + 1);
|
||||
}
|
||||
|
||||
function prevHomeSlide() {
|
||||
goToHomeSlide(currentHomeSlide - 1);
|
||||
}
|
||||
|
||||
if (nextBtnHome) nextBtnHome.addEventListener('click', nextHomeSlide);
|
||||
if (prevBtnHome) prevBtnHome.addEventListener('click', prevHomeSlide);
|
||||
|
||||
function startHomeAutoplay() {
|
||||
homeSlideInterval = setInterval(nextHomeSlide, 5000); // Troca a cada 5 segundos
|
||||
}
|
||||
|
||||
function resetHomeAutoplay() {
|
||||
clearInterval(homeSlideInterval);
|
||||
startHomeAutoplay();
|
||||
}
|
||||
|
||||
startHomeAutoplay();
|
||||
}
|
||||
});
|
||||
Reference in New Issue
Block a user