как добавить задержку после .show jquery - PullRequest
3 голосов
/ 11 января 2012

У меня есть кнопка на моей странице, которая при нажатии отображает скрытый div.Есть ли способ для меня использовать jquery .show, чтобы этот div (содержащий текст) показывался, появлялся на несколько секунд, скажем, 3 секунды, а затем снова скрывался без повторного нажатия кнопки пользователем.(т.е. используйте функцию .hide jquery).Ниже я приложу соответствующий код:

<body>

<button  class="info" id="one"> ? </button>

<div class="pop" id="1" style="display: none">
A Careless criminal has dropped a weapon!
</div>

<script>
   $("button#one").click(function () {
    $("div#1").show("slow");
    });
 </script>

</body>

Ответы [ 2 ]

4 голосов
/ 11 января 2012

Описание

Для этого следует использовать метод jQuery .show(), .delay() и .hide().

Примечание: jQuery .show() и .hide() использует .animate() для внутреннего использования.

Проверьте образец этой демонстрации jSFiddle .

Образец

$("button#one").click(function () {
    $("div#1").show("slow").delay(3000).hide("slow");
});

Дополнительная информация

2 голосов
/ 11 января 2012

Да, легко, используя delay и hide:

$('div#1').show('slow').delay(3000).hide('slow');

Обратите внимание, что это работает, потому что hide - это функция анимации.Если у вас нет функции анимации и вы хотите сделать что-то еще (например, удалить с помощью remove), вам придется использовать другой метод, с использованием обратных вызовов и setTimeout.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...