Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 22.02.2017, 01:41
Новичок на форуме
Отправить личное сообщение для Mishat Посмотреть профиль Найти все сообщения от Mishat
 
Регистрация: 22.02.2017
Сообщений: 1

Скрыть все блоки div по условию
Здравствуйте, помогите пожалуйста решить проблему. Постоянно приходиться долго прокручивать страницу чтобы добраться до определенного блока.
Нужно скрыть все блоки div class="item" имеющие внутри блок div class="item__status" который не содержит тег span. Внутри блока div class="item" не один блок div - это я урезал пример для наглядности. Букмарклет из Javascript сделать смогу.

Код:
<div class="item" data-item="666" data-item-id="8336528" data-sale="true" data-count="1"> 
	<div class="item__status">
		<span class="icon icon-lock-scratch"></span>
	</div>
</div>


<div class="item" data-item="689" data-item-id="8330595" data-sale="true" data-count="1">
	<div class="item__status"></div>
</div>


<div class="item" data-item="674" data-item-id="8248010" data-sale="true" data-count="1">
	<div class="item__status">
		<span class="icon icon-lock-scratch"></span>
	</div>
</div>
Ответить с цитированием
  #2 (permalink)  
Старый 22.02.2017, 09:44
Интересующийся
Отправить личное сообщение для ynherb Посмотреть профиль Найти все сообщения от ynherb
 
Регистрация: 21.02.2017
Сообщений: 14

var elem = document.querySelectorAll('.item')

for(var i = 0, el;; i < elem.length; i++) {
  (el = elem[i].querySelector('.item_status')) &&  (!el.querySelector('span')) && elem[i].display.style = 'none';
}

Последний раз редактировалось ynherb, 22.02.2017 в 09:48.
Ответить с цитированием
  #3 (permalink)  
Старый 22.02.2017, 10:18
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,228

Мои 5копеек...

<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="https://code.angularjs.org/1.3.9/angular.min.js"></script>
<script src="https://code.angularjs.org/1.3.9/angular-route.js"></script>
-->
<style type='text/css'>
</style>
<script type='text/javascript'>
$(function(){
	$('.item > .item__status').filter(function(){
		return $(this).find('span').length!=0;
	}).each(function(){
		$(this).parent().hide();
	});
});
</script>
</head>
<body>
<div class="item" data-item="666" data-item-id="8336528" data-sale="true" data-count="1"> 
	<div class="item__status">
		<span class="icon icon-lock-scratch">span_0</span>
	</div>
</div>
<div class="item" data-item="689" data-item-id="8330595" data-sale="true" data-count="1">
	<div class="item__status">no_span_0</div>
</div>
<div class="item" data-item="674" data-item-id="8248010" data-sale="true" data-count="1">
	<div class="item__status">
		<span class="icon icon-lock-scratch">span_1</span>
	</div>
</div>
</body>
</html>
Ответить с цитированием
  #4 (permalink)  
Старый 22.02.2017, 10:50
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Сообщение от ksa
Мои 5копеек...
<!DOCTYPE html>
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251' />
<script src='http://code.jquery.com/jquery-latest.js'></script>
<!--
<script src="https://code.angularjs.org/1.3.9/angular.min.js"></script>
<script src="https://code.angularjs.org/1.3.9/angular-route.js"></script>
-->
<style type='text/css'>
</style>
<script type='text/javascript'>
$(function(){
  $('.item > .item__status').each(function(){
    $(this).find('span').parents('.item').hide();
  });
});
</script>
</head>
<body>
<div class="item" data-item="666" data-item-id="8336528" data-sale="true" data-count="1">
  <div class="item__status">
    <span class="icon icon-lock-scratch">span_0</span>
  </div>
</div>
<div class="item" data-item="689" data-item-id="8330595" data-sale="true" data-count="1">
  <div class="item__status">no_span_0</div>
</div>
<div class="item" data-item="674" data-item-id="8248010" data-sale="true" data-count="1">
  <div class="item__status">
    <span class="icon icon-lock-scratch">span_1</span>
  </div>
</div>
</body>
</html>

<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>


</head>

<body>
<div class="item" data-item="666" data-item-id="8336528" data-sale="true" data-count="1">
  <div class="item__status">
    <span class="icon icon-lock-scratch">span_0</span>
  </div>
</div>
<div class="item" data-item="689" data-item-id="8330595" data-sale="true" data-count="1">
  <div class="item__status">no_span_0</div>
</div>
<div class="item" data-item="674" data-item-id="8248010" data-sale="true" data-count="1">
  <div class="item__status">
    <span class="icon icon-lock-scratch">span_1</span>
  </div>
</div>
  <script>
    [].forEach.call( document.querySelectorAll('.item > .item__status'), function(el) {
        el.querySelector('span') && (el.parentNode.style.display = "none");
    });
  </script>

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



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Скрыть блок div. Monster123 Элементы интерфейса 10 28.07.2016 01:30
Помогите разобраться с кроссбраузерностью Javascript'a skvsk Events/DOM/Window 6 09.12.2010 09:05
как удалить все элементы в Div e ? Arfey Общие вопросы Javascript 14 10.06.2010 11:50
div на все окно независимо от скроллинга Vladimir1980 Элементы интерфейса 10 25.01.2010 14:33
глюк форума Gvozd Сайт Javascript.ru 11 18.03.2009 14:37