Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 04.02.2017, 22:24
Аспирант
Отправить личное сообщение для phoenix200689 Посмотреть профиль Найти все сообщения от phoenix200689
 
Регистрация: 02.11.2016
Сообщений: 31

Не работает transition при добавлении класса (pure JS)
Товарищи, кто-нибудь знает как заставить работать свойство transition при добавлении/удалении класса? И можно ли это реализовать меньшим количеством строк чистого js-кода?
Спасибо, что помогаете новичкам =)

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<meta name="viewport" content="width=device-width, initial-scale=1.0">
	<!-- <link rel="stylesheet" href="style.css"> -->
</head>
<body>

<div class="fixed-wrap fixed-wrap__modal">
    	<div class="modal">
        	<div class="modal-container">    
        	</div>
    	</div>
	</div>
  
  <button class="tasks__btn" type="submit">+ добавить задачу</button>

		<style>
			.fixed-wrap {
			display: none;
		    position: fixed;
		    overflow: auto;
		    left: 0;
		    top: 0;
		    width: 100%;
		    height: 100%;
		    background: rgba(0, 0, 0, .6);
		    opacity: 0;
		    transition: opacity 1s;
		}

		.fixed-wrap._show {
			display: block;
			opacity: 1;
		}

		.tasks__btn {
		    cursor: pointer;
		}

		</style>


<script>

	document.addEventListener("DOMContentLoaded", function() {
		var btnPopup = document.getElementsByClassName("tasks__btn")[0].addEventListener("click", function() {
			var popup =	document.getElementsByClassName("fixed-wrap")[0];
			popup.classList.add("_show");
		})
	});

</script>

	
</body>
</html>
Ответить с цитированием
  #2 (permalink)  
Старый 04.02.2017, 22:36
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

phoenix200689,
<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <!-- <link rel="stylesheet" href="style.css"> -->
</head>
<body>

<div class="fixed-wrap fixed-wrap__modal">
    	<div class="modal">
        	<div class="modal-container">
        	</div>
    	</div>
  </div>

  <button class="tasks__btn" type="submit">+ добавить задачу</button>

    <style>
      .fixed-wrap {
      display: none;
        position: fixed;
        overflow: auto;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background: rgba(0, 0, 0, .6);
        opacity: 0;
        transition: opacity 1s;
    }

    .fixed-wrap._show {
      opacity: 1;
    }

    .tasks__btn {
        cursor: pointer;
    }

    </style>


<script>
document.addEventListener("DOMContentLoaded", function() {
    document.querySelector(".tasks__btn").addEventListener("click", function() {
        var popup = document.querySelector(".fixed-wrap");
        popup.style.display = "block";
        window.setTimeout(function() {
            popup.classList.add("_show")
        }, 0)
    })
});
</script>


</body>
</html>
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удалить некоторые ссылки со страницы при помощи js goga5 Общие вопросы Javascript 7 12.07.2016 14:41
AddEventListener не правильно работает с классами Flakky Events/DOM/Window 2 27.05.2016 13:51
На сайте не работает ни один js, поосле переноса на хостинг guna Ваши сайты и скрипты 3 29.06.2014 13:59
js для плавного увеличения пункта меню при наведении Серега187 Элементы интерфейса 2 19.10.2013 11:33
Картинка вместо меню при отключенном JS px379 Элементы интерфейса 0 01.05.2012 02:07