Tooltipster позволяет гибко управлять моментом появления и скрытия
подсказок с помощью опций delay,
animationDuration и trigger. По умолчанию
библиотека использует задержку для плавного появления тултипов, чтобы
избежать «мигания» при случайных наведениях курсора. Задержки
применяются как при показе (delay: { show: X }), так и при
скрытии (delay: { hide: Y }), где X и Y указываются в
миллисекундах.
В типичных сценариях, когда требуется мгновенная реакция интерфейса, стандартные задержки могут мешать, особенно при динамическом контенте или интерактивных элементах, где важна оперативная обратная связь.
delayTooltipster предоставляет возможность полностью отключить задержки
при наведении или уходе курсора. Для этого используется настройка
delay в инициализации:
$('.tooltip').tooltipster({
delay: 0
});
При таком подходе тултип появляется сразу при срабатывании события и исчезает мгновенно при уходе курсора.
Если необходимо задать раздельно время для показа и скрытия, можно
использовать объект с ключами show и hide:
$('.tooltip').tooltipster({
delay: {
show: 0,
hide: 0
}
});
Использование этих настроек полностью исключает стандартную анимационную задержку, что полезно для быстрого взаимодействия.
trigger на мгновенное отображениеtrigger определяет событие, запускающее тултип. По
умолчанию используется hover, но возможны и другие
варианты: click, custom.
trigger: 'hover' совместим с delay: 0.trigger: 'click' или
trigger: 'custom' задержка также может быть полностью
отключена, так как событие инициируется напрямую.Пример для клика:
$('.tooltip').tooltipster({
trigger: 'click',
delay: 0
});
В этом случае подсказка откроется немедленно при клике и закроется
сразу при повторном клике или при вызове метода
close().
Даже при delay: 0 тултип может скрываться с эффектом
анимации, установленным через animation и
animationDuration. Для мгновенного исчезновения стоит
использовать:
$('.tooltip').tooltipster({
animation: false,
delay: 0
});
Если анимация задана явно, например, fade, но необходим
быстрый отклик, достаточно уменьшить длительность анимации до
минимального значения:
$('.tooltip').tooltipster({
animation: 'fade',
animationDuration: 0,
delay: 0
});
Таким образом, появляется мгновенный эффект открытия и закрытия тултипа без визуальной задержки.
open() и close() для динамического
управленияTooltipster предоставляет программные методы управления состоянием тултипов:
open() — немедленно открывает тултип, игнорируя
задержку.close() — немедленно закрывает тултип, игнорируя
задержку.Пример динамического управления:
const $element = $('.tooltip');
$element.tooltipster({
delay: 0
});
$element.on('mouseenter', function() {
$(this).tooltipster('open');
});
$element.on('mouseleave', function() {
$(this).tooltipster('close');
});
Даже при сложных пользовательских сценариях использование этих методов позволяет полностью обойти стандартные задержки и анимации.
Для интерактивных тултипов (interactive: true) задержка
особенно критична, поскольку курсор может пересекать элемент и тултип.
Чтобы убрать задержку без потери интерактивности:
$('.tooltip').tooltipster({
interactive: true,
delay: 0,
animationDuration: 0
});
Это гарантирует мгновенное появление тултипа при наведении и исчезновение при уходе, при этом пользователь может взаимодействовать с содержимым тултипа без «залипания» из-за стандартных таймеров.
delay: 0 и animationDuration: 0.hover, click,
custom) подход одинаков, важно учитывать особенности
событий.open() и close() дают полный
контроль над моментом отображения тултипа.Такой подход обеспечивает максимально отзывчивый интерфейс без визуальных задержек, сохраняя гибкость и управление поведением тултипов через Tooltipster.