Now the video is just being generated immediately when entering the site (there is sound, pictures are not visible)
window.onload = function(){document.getElementById('popup-bg').onclick = function(e) {if (e.target != this) { return true; } popup(-1);} } function popup(nm) { popupElm = document.getElementById("popup-bg"); if (nm == -1) { popupElm.classList.remove('visible'); } else { elm = popupElm.getElementsByClassName('popup'); if (typeof nm != 'undefined') for (var i = elm.length - 1; i >= 0; i--) { if (elm[i].id == "popup" + nm) { elm[i].classList.add('visible'); popupElm.classList.add('visible'); } else elm[i].classList.remove('visible'); } else popupElm.classList.add('visible'); } }; <div class="popup-bg" id="popup-bg"> <div class="popup" id="popup2"> <div class="head"> <div class="close" onclick="popup(-1)">×</div> </div> <div class="contents video" > <p class="mb2">Посмотрите это видео</p> <iframe width="560" height="315" src="https://www.youtube.com/embed/WlnexV2eAvI?rel=0&autoplay=1" frameborder="0" allowfullscreen></iframe> </div> </div> </div>
popup-bgcreate through js and interpose into DOM when it is required, but not in the latent state you hold. - Visman