@hooli-gun

Как закрыть можальное окно через 5 секунд?

Как сделать так что бы модальное окно закрылось сомо через 5 секунд?

<a id="chip-copy" class="chip__modal" href="javascript:;"></a>


<div id="modal-box" class="modal">
		<div class="modal__content">
			<svg class="modal__icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36.55 36.55"><path d="M18.27 0C8.2 0 0 8.2 0 18.27s8.2 18.27 18.27 18.27 18.27-8.2 18.27-18.27S28.35 0 18.27 0Zm0 33.23c-8.24 0-14.95-6.71-14.95-14.95S10.03 3.32 18.27 3.32s14.95 6.71 14.95 14.95-6.71 14.95-14.95 14.95Z" class="b"/><path d="m25.13 11.81-9.4 9.4-4.31-4.31a1.66 1.66 0 0 0-2.35 0c-.65.65-.65 1.7 0 2.35l5.48 5.48c.31.31.73.49 1.17.49.44 0 .86-.18 1.17-.49l10.57-10.57c.65-.65.65-1.7 0-2.35a1.66 1.66 0 0 0-2.35 0Z" class="b"/></svg>
			<p class="modal__text">Скопировано!</p>
		</div>
	</div>


// copy text on click
document.getElementById('chip-copy').onclick = function(e){
  if (document.selection) {
      const range = document.body.createTextRange();
      range.moveToElementText(this);
      range.select();
  } else if (window.getSelection) {
      const range = document.createRange();
      range.selectNode(this);
      window.getSelection().addRange(range);
  }
  document.execCommand('copy');
  return false;
}

// Modal
const modal = document.querySelector("#modal-box");
const btn = document.querySelectorAll(".chip__modal");

for (let i = 0; i < btn.length; i++) {
  btn[i].addEventListener("click", function () {
    modal.style.display = "flex";
  });
}
	
btn.onclick = function () {
  modal.style.display = "flex";
};
	
window.onclick = function (event) {
  if (event.target == modal) {
    modal.style.display = "none";
  }
};
  • Вопрос задан
  • 172 просмотра
Решения вопроса 2
Mike_Ro
@Mike_Ro Куратор тега JavaScript
Python, JS, WordPress, SEO, Bots, Adversting
setTimeout
https://developer.mozilla.org/en-US/docs/Web/API/s...

После истечения счетчика - выполнить у окна:
modal.style.display = "none";
Ответ написан
Комментировать
noder_ss
@noder_ss
Линуксоид-энтузиаст и SQL разработчик
SetTimeout(function (){
Modal.style.display = "none"
}, 5000)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы