Страницы

Поиск по вопросам

среда, 10 июля 2019 г.

Как прервать действие

Есть две функции
var widget = $('popup'); function show() { widget.show(); }; function hide() { widget.show().delay(delay).fadeOut(); };
Проблема в том, что если вызывается show() раньше чем закончит выполняться hide(), то показываемый элемент всё равно скроется.
Можно ли как-нибудь при вызове show() прерывать предыдущие действия для widget


Ответ

@lexxl, немного откорректировав комментарий, я добился желаемого. Сам использовал stop(), но без аргументов он работал не так.
var widget = $('#popup').hide(); $('#show').click(function(e) { widget.stop(true).show(); }); $('#hide').click(function(e) { widget.show().delay(7000).fadeOut(); }); #popup { border: 1px solid; margin: 10px; padding: 10px; width: 200px; text-align: center; }


Комментариев нет:

Отправить комментарий