@reaget

Почему исчезает popup при нажатие на окно?

Есть такое окно модальное:
<div class="popup">
	<div class="form2019">
	<h1>Заявка</h1>
	<p>Заполните короткую форму и наш специалист свяжется с Вами в ближайшее время</p>	
		<form id="form2019">
		
		</form>
	</div>
</div>

Вот код CSS
.popup {
	position: fixed;
	background:rgba(0,0,0,.6);
	top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: none;
    z-index:99;
}
.form2019 {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
		z-index:999;
		width:434px;
		padding:30px 40px;
		background:#FFFFFF;
		border:1px solid #666666;
		border-radius:1px;
		box-shadow:0 0 2px rgba(0,0,0,0.6);
	}


Проблема в том, что когда я нажимаю на само окно, оно исчезает. Почему?
Я проверял с помощью JQuery, при нажатии на форму, target равен div.popup, а не div.form2019
  • Вопрос задан
  • 212 просмотров
Решения вопроса 1
fallus
@fallus
Не знаю, правильно ли я понял суть проблемы.

Оно исчезает потому, что является частью родительского контейнера, который должен скрыться.
Нужна проверка.

$(".popup").click(function(e){
  if(e.target == this){
    $(".popup").fadeOut(400);
  }
});
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@xonar
А смысл?
Может потому что у popup в стилях display: none; ? Естественно его не будет видно. Если хотите, чтобы popup окно открывалось при вызове, ему нужно класс вешать например is-active со свойством display:block.

Если я правильно понял вашу проблему конечно.
Или скорее всего, вы добавили событие в jquery если клик на окно происходит, то он скрывается. Код полный покажите на codepen.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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