Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: поиск элемента

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Pavelbeginner
Отправлено: 11 Октября, 2013 - 13:52:16
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 882
Дата рег-ции: Март 2010  


Помог: 1 раз(а)




Есть следующий код:
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. var blocks1 = $('.blocks1');
  3. var blocks3 = $('.blocks3');


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

CODE (javascript):
скопировать код в буфер обмена
  1. blocks1.find(':not(.block2)' blocks3);

понятно, что вот этот кусок ':not(.block2)' blocks3 неправильно записан. Как правильно написать? Спасибо.
Знаю как решить эту задачу, но не знаю как это правильнее записать, чтобы максимально быстро выполнялось, поэтому и обращаюсь к вам.
 
 Top
IllusionMH
Отправлено: 11 Октября, 2013 - 13:55:43
Post Id



Активный участник


Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011  
Откуда: .kh.ua


Помог: 242 раз(а)




Pavelbeginner, с первого раза http://jsfiddle[dot]net/IllusionMH/G85j6/
 
 Top
Pavelbeginner
Отправлено: 11 Октября, 2013 - 14:58:51
Post Id



Частый посетитель


Покинул форум
Сообщений всего: 882
Дата рег-ции: Март 2010  


Помог: 1 раз(а)




Поясню в чем затык подробнее:
есть уже найденные теги с классом .block1
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. var block1 = $('.block1');
  3.  

и есть уже найденные теги с классом .block3 внутри block1
CODE (javascript):
скопировать код в буфер обмена
  1.  
  2. var block3 = $('.block3', block1);
  3.  


Теперь мне нужно отфильтровать block3. А именно - нужно убрать из block3 те элементы, которые идут внутри элементов из block1, и между block1 и block3 имеется тег классом block2.
 
 Top
IllusionMH
Отправлено: 11 Октября, 2013 - 15:10:20
Post Id



Активный участник


Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011  
Откуда: .kh.ua


Помог: 242 раз(а)




Pavelbeginner, экономите на спичках? Тогда курите функцию .not
http://jsfiddle[dot]net/IllusionMH/G85j6/1/

(Отредактировано автором: 11 Октября, 2013 - 15:12:22)

 
 Top
SAD
Отправлено: 11 Октября, 2013 - 16:53:04
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




ну вы даете
CODE (javascript):
скопировать код в буфер обмена
  1. $('.blocks1').children('.blocks3')
 
 Top
IllusionMH
Отправлено: 11 Октября, 2013 - 17:45:14
Post Id



Активный участник


Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011  
Откуда: .kh.ua


Помог: 242 раз(а)




SAD, действительно.
Но если вложенность присутствует всегда - не прокатит. ТС же как партизан ничего не сказал про соответствие селектору .block1 > .block3
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« JavaScript & VBScript »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB