www.jQueryBook.ru - jQuery документация

 

 

 

 

  • Категории: Effects › Basics

    .hide()

    Скрывает видимые элементы набора jQuery (эфект плавного уменьшения размеров и уровня непрозрачности одновременно).

Синтаксис и описание:

  • Добавлено в jQuery 1.0.hide( )

  • Добавлено в jQuery 1.0.hide( [ duration ] [, complete ] )

  • Добавлено в jQuery 1.0.hide( options )

  • Добавлено в jQuery 1.4.3.hide( duration [, easing ] [, complete ] )

  • Команда .hide() скрывает элементы набора jQuery. Без аргументов она мгновенно устанавливает display: none. С параметром duration — плавно, за счёт очереди эффектов, одновременно уменьшает ширину, высоту и непрозрачность элемента до нуля, а затем устанавливает display: none.

Возвращаемое значение: (объект) Набор jQuery.

Параметры:

  • duration – (число | строка) Продолжительность в миллисекундах либо "fast" (200 мс) / "slow" (600 мс). По умолчанию — 400 мс.

  • easing – (строка, с jQuery 1.4.3) Имя функции перехода: встроены только swing (по умолчанию) и linear.

  • complete – (функция) Вызывается по одному разу на каждый анимированный элемент после завершения эффекта.

  • options – (объект) Хэш параметров: duration, easing, complete, queue, step, progress, specialEasing и др. — та же система параметров, что и у .animate().

  1. Примечание:

    Перед скрытием jQuery сохраняет исходное значение CSS-свойства display элемента (например, inline, flex, table-row) во внутреннем кеше данных, поэтому последующий .show() восстановит именно это значение, а не всегда block.

  2. Примечание:

    Парный метод — .show(); переключатель состояния «показан/скрыт» — .toggle(). Проверить, скрыт ли элемент через display: none, можно селектором :hidden.

  3. Примечание:

    Нативная альтернатива без анимации и без jQuery — глобальный HTML-атрибут hidden: браузер по умолчанию применяет к нему правило [hidden] { display: none }. Учтите специфичность: если в проекте на элемент уже навешан класс с собственным display, атрибут hidden может быть перебит более специфичным CSS-правилом — тогда потребуется явное [hidden] { display: none !important; }.

  4. В jQuery 3.x и 4.0:

    Метод не деприкейчен и работает как прежде. В slim-сборке jQuery (доступна с 3.0) анимационная часть эффектов недоступна вовсе, а с 4.0 slim-сборка дополнительно лишена модулей deferred и queue — то есть версии .hide() с duration в slim-сборке 4.0 работать не будут, доступен только мгновенный вызов без анимации. Нужны эффекты — подключайте полную сборку jQuery.

Примеры:

  1. Мгновенное и анимированное скрытие.

    $('#alert').hide(); // сразу display: none
    
    $('#alert').hide(300, function() {
      console.log('Блок полностью скрыт');
    });
  2. Скрытие с easing и восстановление исходного display через .show().

    // <span id="badge" style="display: inline-block;">Новое</span>
    $('#badge').hide('slow');
    // ...позже:
    $('#badge').show(); // вернётся именно inline-block, а не block
  3. Нативная альтернатива атрибутом hidden — без анимации, зато без зависимости от jQuery.

    document.getElementById('alert').hidden = true;
    // эквивалент показа:
    document.getElementById('alert').hidden = false;

[ наверх ]









 




Справочник по jQuery JavaScript API на русском языке