aboutsummaryrefslogtreecommitdiffstats
path: root/src/queue/delay.js
blob: d2aa7e4092fd9ac712e942a0f079b8b6798421f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
define([
	"../core",
	"../var/setTimeout",
	"../var/clearTimeout",
	"../queue",
	"../effects" // Delay is optional because of this dependency
], function( jQuery, setTimeout, clearTimeout ) {

// Based off of the plugin by Clint Helfers, with permission.
// http://web.archive.org/web/20100324014747/http://blindsignals.com/index.php/2009/07/jquery-delay/
jQuery.fn.delay = function( time, type ) {
	time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time;
	type = type || "fx";

	return this.queue( type, function( next, hooks ) {
		var timeout = setTimeout( next, time );
		hooks.stop = function() {
			clearTimeout( timeout );
		};
	});
};

return jQuery.fn.delay;
});