Вы можете использовать jQuery-селектор :visible, чтобы проверить, отображается ли элемент во фронтенде или нет. Этот селектор также выберет элементы с visibility: hidden; или opacity: 0;, потому что они сохраняют пространство в макете, даже если они не видны глазу.

Давайте рассмотрим пример, чтобы понять, как работает этот селектор:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery Test If an Element is Visible</title>
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script>
    $(document).ready(function(){
        $("button").click(function(){
            // показать/скрыть абзац при нажатии кнопки
            $("p").toggle("slow", function(){
                // проверяем абзац после завершения эффекта переключения
                if($("p").is(":visible")){
                    alert("Абзац виден.");
                } else{
                    alert("Абзац НЕ виден.");
                }
            });
        });
    });
</script>
</head>
<body>
    <button type="button">Переключатель</button>
    <p style="display: none;">Lorem ipsum dolor sit amet adipi elit...</p>
</body> 
</html>

Читайте также

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка 5 / 5. Количество оценок: 1

Оценок пока нет. Поставьте оценку первым.