Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.10.2013, 14:50
Кандидат Javascript-наук
Отправить личное сообщение для FanAizu Посмотреть профиль Найти все сообщения от FanAizu
 
Регистрация: 08.03.2011
Сообщений: 148

поиск элемента
Есть следующий код:
var blocks1 = $('.blocks1');
var blocks3 = $('.blocks3');


теперь мне нужно найти blocks3, который находятся внутри blocks1, но чтобы между blocks3 и blocks1 не было блоков с классом .block2. Как записать это выражение? Нужно что-то вроде этого(продолжение первого куска кода):
blocks1.find(':not(.block2)' blocks3);

понятно, что вот этот кусок ':not(.block2)' blocks3 неправильно записан. Как правильно написать? Спасибо.
Знаю как решить эту задачу, но не знаю как это правильнее записать, чтобы максимально быстро выполнялось, поэтому и обращаюсь к вам.
Ответить с цитированием
  #2 (permalink)  
Старый 11.10.2013, 15:11
Аватар для ksa
ksa ksa вне форума
CacheVar
Отправить личное сообщение для ksa Посмотреть профиль Найти все сообщения от ksa
 
Регистрация: 19.08.2010
Сообщений: 14,122

Сообщение от FanAizu
нужно найти blocks3, который находятся внутри blocks1, но чтобы между blocks3 и blocks1 не было блоков с классом .block2.
Если один находится внутри... То как еще кто-то может быть между ними?
Ответить с цитированием
  #3 (permalink)  
Старый 11.10.2013, 15:16
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

Попробуйте:
blocks1.children('.blocks3')
__________________
.
Ответить с цитированием
  #4 (permalink)  
Старый 11.10.2013, 15:59
Кандидат Javascript-наук
Отправить личное сообщение для FanAizu Посмотреть профиль Найти все сообщения от FanAizu
 
Регистрация: 08.03.2011
Сообщений: 148

Поясню в чем затык подробнее:
есть уже найденные теги с классом .block1
[code=javascript]
var block1 = $('.block1');
[/code]
и есть уже найденные теги с классом .block3 внутри block1
[code=javascript]
var block3 = $('.block3', block1);
[/code]

Теперь мне нужно отфильтровать block3. А именно - нужно убрать из block3 те элементы, которые идут внутри элементов из block1, и между block1 и block3 имеется тег классом block2.
Ответить с цитированием
  #5 (permalink)  
Старый 11.10.2013, 16:16
Аватар для BETEPAH
Профессор
Отправить личное сообщение для BETEPAH Посмотреть профиль Найти все сообщения от BETEPAH
 
Регистрация: 23.06.2011
Сообщений: 1,165

Сообщение от FanAizu
Теперь мне нужно отфильтровать block3. А именно - нужно убрать из block3 те элементы, которые идут внутри элементов из block1, и между block1 и block3 имеется тег классом block2.
имеется в виду, что блок3 может быть вложен в блок2, который вложен в блок1? Или имеется в виду, что в блок1 вложены равноуровневые блок2 и блок3 и блок2 идет перед блок3?
Нарисуйте html примера, а то не очень понятно слово "между"
Ответить с цитированием
  #6 (permalink)  
Старый 11.10.2013, 23:25
Кандидат Javascript-наук
Отправить личное сообщение для nyols Посмотреть профиль Найти все сообщения от nyols
 
Регистрация: 16.02.2011
Сообщений: 134

$(':not(.block2) .block3, > .block3', '.block1');


<!DOCTYPE HTML>
<html>
  <head>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js"></script>
  </head>
  <body>
    <div class="block1">
      <div class="block2">
        <div class="block3"></div>
      </div>
      <div class="block3"></div>
      <div>
        <div class="block3"></div>
      </div>
    </div>
    
    <div class="block1">
      <div class="block2">
        <div class="block3"></div>
      </div>
      <div class="block3"></div>
      <div>
        <div class="block3"></div>
      </div>
    </div>
    
    <script>
      var b = $(':not(.block2) .block3, > .block3', '.block1');
      
      alert(b.length);
    </script>
  </body>
</html>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск элемента по классу shaltay jQuery 5 20.01.2013 18:38
Поиск элемента alex2012 jQuery 0 21.02.2012 19:37
Поиск самого длинного элемента Randomizer jQuery 9 14.03.2011 14:13
поиск элемента magavnuk Events/DOM/Window 10 14.07.2009 20:40
Поиск элемента по куску его Id gregOlsener Events/DOM/Window 1 25.08.2008 22:04