/* * *	jQuery Timer plugin v0.1 *		Matt Schmidt [http://www.mattptr.net] * *	Licensed under the BSD License: *		http://mattptr.net/license/license.txt * */  jQuery.timer = function (interval, callback) { /**  *  * timer() provides a cleaner way to handle intervals    *  *	@usage  * $.timer(interval, callback);  *  *  * @example  * $.timer(1000, function (timer) {  * 	alert("hello");  * 	timer.stop();  * });  * @desc Show an alert box after 1 second and stop  *   * @example  * var second = false;  *	$.timer(1000, function (timer) {  *		if (!second) {  *			alert('First time!');  *			second = true;  *			timer.reset(3000);  *		}  *		else {  *			alert('Second time');  *			timer.stop();  *		}  *	});  * @desc Show an alert box after 1 second and show another after 3 seconds  *  *   */	var interval = interval || 100;	if (!callback)		return false;		_timer = function (interval, callback) {		this.stop = function () {			clearInterval(self.id);		};				this.internalCallback = function () {			callback(self);		};				this.reset = function (val) {			if (self.id)				clearInterval(self.id);						var val = val || 100;			this.id = setInterval(this.internalCallback, val);		};				this.interval = interval;		this.id = setInterval(this.internalCallback, this.interval);				var self = this;	};		return new _timer(interval, callback); };