Показать сообщение отдельно
  #9 (permalink)  
Старый 26.10.2017, 18:30
Профессор
Отправить личное сообщение для Rasy Посмотреть профиль Найти все сообщения от Rasy
 
Регистрация: 17.06.2016
Сообщений: 509

javascript every
Сообщение от Янковиц
Как задать условие, при котором при клике по one происходит проверка всех элементов на странице с этим классом, и если во всех элементах one есть класс active, то у span удаляется disabled?
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>javascript every</title>
</head>
<body>

	<div class="parent">
		<div class="one">one</div>
	</div>
	<div class="parent">
		<div class="one">one</div>
	</div>
	<span class="disabled">span</span>

	<script>
		(function(span, hook, target) {
			var sp = document.querySelector('.'+span);
			document.addEventListener('click', function(e) {
				if (e.target.classList.contains(target)) {
					e.target.classList.add(hook);
					var qf = [].every.call(document.querySelectorAll('.'+target), function(elem, indx) {
						return elem.classList.contains(hook);
					});
					if (qf) sp.classList.remove(span);
				}
			});
		})('disabled', 'active', 'one');
	</script>

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