2016-06-29 3 views
-2

Если у меня есть группа селекторов, я хочу использовать функцию hide(), и у меня есть селектор, который называется тем же самым в другом месте пользовательского интерфейса (в других модалях). Каков наиболее эффективный способ скрыть все элементы, связанные с родительским модальным?Элементы пожарной группы jQuery, которые являются элементами родительского модального элемента

Как это или это даже возможно, и что это за синтаксис такого типа, я видел его где-то раньше?

$some_parent_element = $("#id"); 

$(".class1, .class2, .class3", $some_parent_element).hide(); 

или вот так?

$($some_parent_element + " .class1", $some_parent_element + " .class2", $some_parent_element + " .class3").hide(); 

второй кажется длинным кодом мудрым. Или есть еще лучший способ?

ответ

1

Это трудно понять, что именно вы после этого, но это звучит, как вы хотите add:

var $someObj = $('#id'); 
... 
$('.class1, .class2, .class3').add($someObj).hide(); 

Если вы хотите найти узлы под$someObj вы бы просто использовать find:

var $someObj = $('#id'), 
    $descendants = $someObj.find('.class1, .class2, .class3'); 
+0

Несомненно, это на самом деле хороший способ обойти это, используя find. Я хотел посмотреть, называется ли это типом синтаксиса типа реферирования, и если jQuery автоматически НАЙДЕТ узлы, используя первый способ? Как $ (". Class", $ obj) .hide(); Или, может быть, это невозможно в jQuery? – Paul

+1

См. Http://api.jquery.com/jquery/#jQuery-selector-context –

+0

Ahhh, это именно то, что я имел в виду, я просто не знал, как это называется. Андре спасибо! – Paul