javascript timer DELAY

by Nikolay Petrov

JavaScript

var delay = (function(){
	var timer = 0;
	return function(callback, ms){
		clearTimeout (timer);
		timer = setTimeout(callback, ms);
	};
})();


(function ($, Drupal, window, document) {
	Drupal.behaviors.basic = {
		attach: function (context, settings) {
			
			jQuery(".teaserGalleryField").once().brazzersCarousel();
			
			var search_price = jQuery( "#search_price" );
			
			jQuery( "#slider" ).slider({
				max:3000000,
				min:700000,
				step:50000,
				create:function(){
					search_price.val( 
						//jQuery( this ).slider( "value" ) 
					);
				},
				slide: function( event, ui ) {
					
						
					//setTimeout(function(){
						
					delay(function(){
						search_price.val( ui.value );
						jQuery('input[name=field_build_price_studio_value], input[name=field_build_price_1_value], input[name=field_build_price_2_value], input[name=field_build_price_3_value] ').val(ui.value);			
						jQuery('.js-form-submit').click();
						
						jQuery('.js-form-submit').click();
					}, 1000);
				}
			});
		}
	};
}(jQuery, Drupal, this, this.document));