У меня есть сообщение об ошибке, это отображается, если форма отправляется и возвращает сообщение об ошибке.jQuery fadeOut если видимый
<div id="error"></div>
FormCheck.php
<script type="text/javascript">
jQuery('#error', window.parent.document).html("There was an Error.");
</script>
Если произошла ошибка, отображается это сообщение. Моя проблема: как я могу позволить ей исчезать через 4 секунды, если она видна?
Here's, что я получил/исследовал ...
<script type="text/javascript">
//if($('#error').is(':visible')) {
$("#error").ready(function() {
$("#error").delay(4000)(function() {
$("#error").fadeOut(500);
});
});
</script>
Couldn't выяснить, как получить это сделать ... может кто-нибудь будет так любезен, чтобы дать мне подсказку, как решить эту проблему?
Почему бы не '$ (« # ошибка »). delay (4000) .fadeOut (500);'? (Причина '.delay () 'не работает в коде OP, это неправильный синтаксис.) – nnnnnn
На веб-сайте jQuery:' 'Метод .delay() лучше всего задерживать между эффектами jQuery в очереди. Поскольку он ограничен - это не так, для Например, предложите способ отменить задержку .delay() не является заменой встроенной функции setTimeout для JavaScript, что может быть более подходящим для определенных случаев использования. ". Хотя я думаю, что это может работать в этом сценарии – Leite
Да, Я знаю, что делает 'delay()' и что etTimeout() 'делает. В этом случае 'delay()' выполнит задание, потому что вам не нужно будет его отменять. (То, что «между queued ... effects» немного вводит в заблуждение, потому что '.delay()' фактически может быть первым «эффектом» в очереди.) – nnnnnn