Я хочу перевірити і сортувати елементи, які є прихованими. Чи можливо знайти всі елементи з атрибутом display
і значенням none
?
Я хочу перевірити і сортувати елементи, які є прихованими. Чи можливо знайти всі елементи з атрибутом display
і значенням none
?
Відповіді:
Ви можете використовувати : видимі для видимих елементів і : приховані, щоб дізнатися приховані елементи. Цей прихований елемент має display
атрибут none
.
hiddenElements = $(':hidden');
visibleElements = $(':visible');
Щоб перевірити конкретний елемент.
if($('#yourID:visible').length == 0)
{
}
Елементи вважаються видимими, якщо вони займають місце в документі. Видимі елементи мають ширину або висоту, що перевищує нуль, Довідка
Ви також можете використовувати () з:visible
if(!$('#yourID').is(':visible'))
{
}
Якщо ви хочете перевірити значення відображення, ви можете використовувати css ()
if($('#yourID').css('display') == 'none')
{
}
Якщо ви використовуєте дисплей, display
можуть мати такі значення .
дисплей: немає
дисплей: вбудований
дисплей: блок
показ: список-елемент
дисплей: вбудований блок
Повний список можливих display
значень можна переглянути тут .
Щоб перевірити властивість відображення за допомогою JavaScript
var isVisible = document.getElementById("yourID").style.display == "block";
var isHidden = document.getElementById("yourID").style.display == "none";
display: block;
написаний css, вбудований у jquery. я не можу перевірити це своїм методом. допоможи мені.
$("element").filter(function() { return $(this).css("display") == "none" });
style="display: none;"
. Відповіді, які використовують :visible
і :hidden
будуть невдалими, якщо ви хочете бачити конкретні елементи, а батьківський елемент прихований, оскільки ці селектори повертають загальну видимість на сторінці (що не було питанням).
visibility: 'hidden';
у css, тому перевірка закінчилася також перевіряючи:$(this).css('visibility') != 'hidden'
У jQuery є два способи перевірки на видимість:
$("#selector").is(":visible")
і
$("#selector").is(":hidden")
Ви також можете виконувати команди на основі видимості в селекторі;
$("#selector:visible").hide()
або
$("#selector:hidden").show()
:visible
також залежить від видимості батьків-предків. Якщо предком є display: none
всі нащадки, його не буде видно незалежно від display
стану.
$('#selector').is(':visible');
:visible
також залежить від видимості батьків-предків. Якщо предком є display: none
всі нащадки, його не буде видно незалежно від display
стану.