Закрытие и создание модального окна
А как закрыть модальное окно (без помощи display:none)
Не так как ниже
let modal = document.getElementsByClassName('modal')[0];
let modalcontent = document.getElementsByClassName('modal-content')[0];
let loginlink = document.getElementById('loginlink');
let elemclose = document.getElementsByClassName("closeregwindow")[0];
loginlink.onclick = function() {
modal.style.display = "inline-block";
}
elemclose.onclick = function() {
modal.style.display = "none";
}
window.onclick = function(event) {
if (event.target == modal) {
modal.style.display = "none";
}
}
<div class="modal">
<div class="modal-content">
<div class="modal-header">
<span class="closeregwindow">×</span>
<h2>Вход или регистрация</h2>
</div>
<div class="modal-body">
<div class="contentreg">
<p class="username"><b>Логин</b></p>
<div class="eleminput">
<input type="text" placeholder="Логин" class="inputusername">
</div>
<p class="username"><b>Пароль</b></p>
<div class="eleminput">
<input type="text" placeholder="Пароль" class="inputusername">
</div>
</div>
<!--
<p>Какой-то текст в теле модального окна</p>
<p>Ещё другой текст...</p>-->
<div class="loginbuttons">
<div class="loginbtnitem1">
<button type="submit" class="loginbtn">Войти</button>
</div>
<div class="loginbtnitem2">
<button type="submit" class="registrationbtn">Регистрация</button>
</div>
</div>
</div>
<div class="modal-footer">
<h3>Футер модального окна</h3>
</div>
</div>
</div>
т. е. не с помощью
elemclose.onclick = function() {
modal.style.display = "none";
}
Иными словами нужно не спрятать, а нужно закрыть окно - возможно обновление главного окна или еще какие-нибудь способы.
Ответы (1 шт):
Автор решения: nazarpunk
→ Ссылка
elemclose.addEventListener(`click`, e => {
e.preventDefault();
modal.remove();
});