jQuery задержка выпуска - PullRequest
       21

jQuery задержка выпуска

0 голосов
/ 17 января 2012

У меня проблема с моим кодом jQuery. На моем сайте есть всплывающая панель с формой. Когда я нажимаю «Отправить» в моей форме, мои данные отправляются на мою электронную почту и в базу данных (по запросу). Однако, после того, как это было отправлено, я хочу:

  1. Моя форма <div> чтобы скрыть.
  2. Мое подтверждение <div>, чтобы показать.
  3. Задержка 2 секунды.
  4. Вся моя панель формы исчезает.
  5. Мое подтверждение <div> и моя форма <div> для восстановления нормальной работы (включая сброс формы, что я не знаю, как сделать, поэтому любая помощь на этом фронте также будет благодарна)

Примечание. Я хочу, чтобы состоялось 5. сообщение, чтобы при необходимости можно было отправить второе электронное письмо. Я могу жить без этого, но по крайней мере до 4. будет необходимо.

Когда я отправляю свою форму, мои данные обрабатываются по желанию, но моя панель скрыта целиком, и не происходит никаких переходов <div>, поэтому я не вижу своего подтверждающего сообщения. Мой код в настоящее время установлен как:

$.post('/includes/hireme.php', $("#formHireMe").serialize(), function(data) {
  $('div#hiremeFormPane').hide();
  $('div#hiremeSubmittedPane').show().delay(5000).hide();
  $('div#hiremeFormPane').show();
  $('div#hiremePanel').fadeOut(150);
});

Кто-нибудь знает а) почему? или б) если есть лучший способ добиться этого эффекта?

1 Ответ

1 голос
/ 17 января 2012

show и hide не являются анимациями, если им не задана длительность.delay влияет на очередь анимации.Поскольку show и hide не помещаются в очередь анимации, delay не задерживает hide, заставляя его немедленно скрываться.

Вы можете либо дать hide длительность (даже 1 сделает это почти мгновенно, но поместит его в очередь анимации, чтобы теперь на него влияло delay), либо вам нужно будет использовать setTimeoutили какая-то другая анимация, например fadeOut.

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