Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Стили (CSS) » Как сделать задержку уведомлений?

Как сделать задержку уведомлений?


     04.10.2018    js    Стили (CSS), jQuery    1122

вопрос
Собственно, стоит сторонний модуль.

При добавлении отзыва, показывается окно уведомления - ShowLoading , но оно показывается так быстро что пользователи не успевают прочитать.

Как сделать задержку данного уведомления?



function KatalogAddComments(){

	var Url = "";
	var form = document.forms['AddKatalogComment'];
        ShowLoading( "Отзыв успешно отправлен.<br><br>В ближайшее время он будет опубликован." );
	
	for( var i=0; i < form.elements.length; i++ )
		{
			var ElementForm = form.elements[i];
			switch( ElementForm.type ){
				
				case "checkbox": {
					if( ElementForm.checked == true )
						{
							Url += "&" + ElementForm.name + "=" + ElementForm.value;
						}
					break
				}
				
				default: {
					Url += "&" + ElementForm.name + "=" + ElementForm.value;
					break
				}
			}
		}

	$.ajax({
		url: dle_root + "engine/ajax/katalog/addcomments.php",
		data: Url,
		success: function( data ){
			
			HideLoading( "" );
			if( /script language/i.exec( data ) == null )
				{
					if( form.answer_id )
						{
							$( "#tree_comments_form-" + form.answer_id.value ).html( data );
							document.getElementById( "button_answer_to_" + form.answer_id.value ).innerHTML = "";
						}
							else
						{
							var new_id = Math.floor( Math.random() * ( 100 - 5 + 1 ) ) + 5;
							var Element = document.createElement( "div" );
							document.getElementById( "KatalogCommentsList" ).appendChild( Element );
							Element.id = "new_comment_" + new_id;
							$( "#" + Element.id ).html( data );					
						}
						
					if( document.getElementById( "KatalogNotComment" ) != null )
						{
							var DelElement = document.getElementById( "KatalogNotComment" );
							DelElement.parentNode.removeChild( DelElement );
						}
						
					if( form.answer_id )
						{
							var ObjCom = document.getElementById( "tree_comments_form-" + form.answer_id.value );
							ObjCom.id = "tree_comments_result-" + form.answer_id.value;
							KatalogAllCancelAnswer();
						}
						
					if( dle_group == 5 )
						{
							form.name.value = "";
							form.com_mail.value = "";
						}
					
					form.comments.value = "";
					
				}
					else
				{
					var new_id = Math.floor( Math.random() * ( 100 - 5 + 1 ) ) + 5;
					var Element = document.createElement( "div" );
					document.getElementById( "KatalogCommentsList" ).appendChild( Element );
					Element.id = "new_comment_" + new_id;
					$( "#" + Element.id ).html( data );	
				}
			
			if( document.getElementById( "dle-captcha") != null )
				{
					KatalogReCaptcha();
					form.sec_code.value = "";
				}
		},
		dataType: "html",
		type: "POST"
	});
}

Ответил: Flash


Вместо
HideLoading( "" );

вставляем
setTimeout(function() { HideLoading( "" ), 5000);

5000 - задержка в миллисекундах

2 комментария

infotim
Юзер

infotim - 4 октября 2018 14:20 -

setTimeout(function() { HideLoading( "Отзыв успешно отправлен.<br>В ближайшее время он будет опубликован." ) }, 5000);

Разобрался.....скобку добавил.

infotim
Юзер

infotim - 4 октября 2018 14:31 -

setTimeout(function() { HideLoading( "" ) }, 5000);

Спасибо, разобрался.

Скобку забыл.

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

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

наверх