(function () { var target = document.querySelector('.video-cover'); if (!target) return; var started = false; function loadPlyr() { if (started) return; started = true; // 1) CSS do Plyr var css = document.createElement('link'); css.rel = 'stylesheet'; css.href = 'https://cdn.plyr.io/3.7.8/plyr.css'; document.head.appendChild(css); // 2) JS do Plyr var js = document.createElement('script'); js.src = 'https://cdn.jsdelivr.net/npm/plyr@3.7.8/dist/plyr.min.js'; js.onload = function () { // 3) Sua init (plyr-custom.txt) — depois que carrega, dispara DCL var init = document.createElement('script'); init.src = 'https://cdn.prod.website-files.com/68b056f4fc684e1a41bf85ec/69920339540314d726db05d4_plyr-custom.txt'; init.onload = function () { // plyr-custom.txt usa addEventListener('DOMContentLoaded', ...) // O DCL já passou; disparamos um sintético para o listener rodar // (cobre new Plyr, wiring do .cover-play e do scroll). document.dispatchEvent(new Event('DOMContentLoaded')); }; document.body.appendChild(init); }; document.body.appendChild(js); } // Sem IntersectionObserver: carrega normalmente if (!('IntersectionObserver' in window)) { loadPlyr(); return; } var io = new IntersectionObserver(function (entries) { if (entries.some(function (e) { return e.isIntersecting; })) { loadPlyr(); io.disconnect(); } }, { rootMargin: '400px 0px' }); io.observe(target); })();