/** * Chrome-specific video fallback * Since Chrome has issues with VideoJS/HLS, this script provides a fallback * that replaces video players with play buttons that redirect to dedicated video pages. */ document.addEventListener('DOMContentLoaded', function() { // Only run this script for Chrome browsers const isChrome = /Chrome/.test(navigator.userAgent) && !/Edge/.test(navigator.userAgent) && !/OPR/.test(navigator.userAgent); if (!isChrome) { return; // Exit if not Chrome } // Videos to handle with IDs and their corresponding dedicated pages const videoMappings = { 'video-hero': '/videos/video1.html', 'video2': '/videos/video2.html', 'video3': '/videos/video3.html' }; // Process each video Object.keys(videoMappings).forEach(function(videoId) { const videoElement = document.getElementById(videoId); if (!videoElement) return; const videoContainer = videoElement.closest('.video-container'); if (!videoContainer) return; // Get poster image const posterUrl = videoElement.getAttribute('poster'); // Create play button overlay const playButtonOverlay = document.createElement('div'); playButtonOverlay.className = 'chrome-play-overlay'; playButtonOverlay.innerHTML = `
`; // Style the container for positioning videoContainer.style.position = 'relative'; // Create a poster image as background if (posterUrl) { const posterImage = document.createElement('div'); posterImage.className = 'chrome-poster-image'; posterImage.style.backgroundImage = `url(${posterUrl})`; videoContainer.appendChild(posterImage); } // Add click event to open the dedicated video page playButtonOverlay.addEventListener('click', function() { window.location.href = videoMappings[videoId]; }); // Hide the original video element videoElement.style.display = 'none'; // Add the play button to the container videoContainer.appendChild(playButtonOverlay); }); });