Подтвердить что ты не робот

В jQuery, как я могу выбрать скрытый элемент?

Как я могу выбрать <span>, где display установлен в none в приведенном ниже коде?

<p id="p1">
<span id="test1" style="display:none">test1</span> 
<span id="test2" >test2</span> 
</p>

Я могу выбрать <span>, чей идентификатор является "test1", используя $("span[id='test1']"), но он не работает, когда я использую $("span[style='display:none']").

Есть ли способ получить этот элемент за раз?

Большое спасибо.

4b9b3361

Ответ 1

Вы ищете :hidden селектор

Обратите внимание, что правильный выбор элемента по идентификатору:

$("#test1");

Выполнение этого так, как вы делаете, делает jQuery ненужным разбором и намного медленнее.

Если вы хотите выбрать #test1, только если он скрыт, вы делаете это:

$("#test1:hidden");

Если вы хотите выбрать все элементы <span>, которые скрыты под #p1, вы делаете это:

$("span:hidden", "#p1");

Как отмечено в комментариях, противоположностью этого селектора является селектор :visible:

$("span:visible", "#p1");

Затем выберем любые видимые элементы <span> в элементе #p1.