document.addEventListener('DOMContentLoaded', function () {
document.querySelectorAll('.landing-testimonials-slider').forEach(function (slider) {
if (slider.dataset.sliderInitialized === 'true') {
return;
}
const slides = Array.from(
slider.querySelectorAll(':scope > .landing-testimonials-slider-slide')
);
if (slides.length <= 1) {
return;
}
slider.dataset.sliderInitialized = 'true';
/* ---------------------------------
Create track
--------------------------------- */
const track = document.createElement('div');
track.className = 'landing-testimonials-slider-track';
slides.forEach(function (slide) {
track.appendChild(slide);
});
slider.appendChild(track);
/* ---------------------------------
Create arrows
--------------------------------- */
const prev = document.createElement('button');
prev.type = 'button';
prev.className =
'landing-testimonials-slider-arrow landing-testimonials-slider-prev';
prev.setAttribute('aria-label', 'Previous testimonial');
prev.innerHTML = '‹';
const next = document.createElement('button');
next.type = 'button';
next.className =
'landing-testimonials-slider-arrow landing-testimonials-slider-next';
next.setAttribute('aria-label', 'Next testimonial');
next.innerHTML = '›';
slider.appendChild(prev);
slider.appendChild(next);
/* ---------------------------------
Create dots
--------------------------------- */
const dotsWrapper = document.createElement('div');
dotsWrapper.className = 'landing-testimonials-slider-dots';
const dots = [];
slides.forEach(function (slide, index) {
const dot = document.createElement('button');
dot.type = 'button';
dot.className = 'landing-testimonials-slider-dot';
dot.setAttribute(
'aria-label',
'Go to testimonial ' + (index + 1)
);
dotsWrapper.appendChild(dot);
dots.push(dot);
});
slider.appendChild(dotsWrapper);
/* ---------------------------------
Slider
--------------------------------- */
let current = 0;
function goToSlide(index) {
current = (index + slides.length) % slides.length;
track.style.transform =
'translate3d(-' + (current * 100) + '%, 0, 0)';
dots.forEach(function (dot, index) {
dot.classList.toggle(
'is-active',
index === current
);
});
}
/* ---------------------------------
Controls
--------------------------------- */
prev.addEventListener('click', function () {
goToSlide(current - 1);
restartAutoplay();
});
next.addEventListener('click', function () {
goToSlide(current + 1);
restartAutoplay();
});
dots.forEach(function (dot, index) {
dot.addEventListener('click', function () {
goToSlide(index);
restartAutoplay();
});
});
/* ---------------------------------
Swipe
--------------------------------- */
let touchStartX = 0;
let touchEndX = 0;
slider.addEventListener(
'touchstart',
function (event) {
touchStartX = event.changedTouches[0].screenX;
},
{ passive: true }
);
slider.addEventListener(
'touchend',
function (event) {
touchEndX =
event.changedTouches[0].screenX;
const distance =
touchEndX - touchStartX;
if (Math.abs(distance) < 50) {
return;
}
if (distance < 0) {
goToSlide(current + 1);
} else {
goToSlide(current - 1);
}
restartAutoplay();
},
{ passive: true }
);
/* ---------------------------------
Autoplay
6000 = 6 seconds
--------------------------------- */
let autoplay;
function startAutoplay() {
autoplay = setInterval(function () {
goToSlide(current + 1);
}, 6000);
}
function stopAutoplay() {
if (autoplay) {
clearInterval(autoplay);
}
}
function restartAutoplay() {
stopAutoplay();
startAutoplay();
}
slider.addEventListener('mouseenter', stopAutoplay);
slider.addEventListener('mouseleave', startAutoplay);
/* Initial state */
goToSlide(0);
startAutoplay();
});
});
Skip to content
Product Description
Made in the USA with a two year warranty
· UL Motor
· Extremely high airflow and air throw, rated up to 18,000 cfm
· Fan oscillates at 90 degree arc; fan head tilts up or down
. Fan housing is made of a rugged high molecular polyethylene.
· 3 Blades, 1/2 HP, 115/230V, 11,700 CFM, pre-wired with a 5 ft fan cord.
· Quiet Operation.
Close
216 Avenida Fabricante Suite 207 San Clemente, CA 92672
Most Orders Delivered in 5 Days — Beat the Heat Fast.
Reviews
There are no reviews yet.