jQuery с помощью остановки () со скрывает () / шоу ()?

Интересно, возможно ли так или иначе использовать stop() функция (я обычно использую на animate()) с hide() или show().

если я быстро неоднократно нависаю над a div который использует show() для отображения некоторого subdivs, выставочная анимация повторяется много раз. stop() функция остановила бы то поведение.

Однако у меня нет подсказки, как я могу использовать stop() функция с hide() или show().

Это даже возможно?

Спасибо
Матовые отношения

8
задан Robert Koritnik 1 July 2010 в 07:42
поделиться

2 ответа

Вы должны установить продолжительность вашего эффекта отображения / скрытия:

.hide('slow')

После этого вы можете использовать .stop () и .stop ( true, true)

stop ([clearQueue], [jumpToEnd])

clearQueue Логическое значение, указывающее, следует ли также удалить анимацию из очереди. По умолчанию false.

jumpToEnd Логическое значение, указывающее, следует ли немедленно завершить текущую анимацию. По умолчанию false.

Другой подход - добавить задержку вроде

 .delay(500).hide(1);

http://api.jquery.com/delay/

.delay (duration, [queueName]) duration Целое число, указывающее количество миллисекунд для задержки выполнения следующего элемента в очереди.

queueName Строка, содержащая имя очереди. По умолчанию fx, стандартная очередь эффектов.

9
ответ дан 5 December 2019 в 15:19
поделиться

Вы должны вызвать функцию остановки для элемента, для которого была вызвана анимация. Также вы можете установить параметр clearqueue, чтобы остановить не только первую форму анимации, но и любые анимации в очереди, ожидающие запуска.

http://api.jquery.com/stop/

2
ответ дан 5 December 2019 в 15:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: