ciao a tutti.

sto scrivendo un plugin jQuery facile facile che dovrebbe cambiare lo sfondo della pagina sia a tempo sia in base al click su oggetti nella pagina.

il punto è questo, visto che il ciclo è basato su un setInterval, non riesco ad interromperlo in modo che al click su un nuovo oggetto, il ciclo riparta con le immagini "nuove"

codice:
(function($){
	var aux;
	$.bg_slide = function(selector, settings){
		
		if(aux === "" || !aux) aux = selector;
		
		clearInterval(timer); // a livello logico, ma NON va
			
		// settings
        var config = {
            'delay': 5000,
            'fadeSpeed': 300
        };
        if ( settings ){ $.extend(config, settings); }
		
		//preload delle immagini	
		var imgs = new Array();
		var base_path = "img/sfondi/";
		for(var i = 1; i < 10; i++) { imgs[i] = $("<img class='sfondo' />").attr('src', base_path+selector+"/"+i+".jpg").css({"display": "none", "z-index": 0, "opacity": 0.85, filter: "alpha(opacity=85)", filter: "\"alpha(opacity=85)\"" }); }
		
//appendo la prima immagine
		$('body').prepend(imgs[1]); 

//altro inutile ai fini della risoluzione del problema
...

		var i = 1;
		// cambia sfondo
		
        var timer = setInterval(function(){
			i = ( i+1 == 9 ) ? 1 : i+1;
			$('.menu').fadeOut(config.speed,function(){
				$('.menu').css("background-image", "url("+base_path+selector+"/"+i+".jpg)").fadeIn(config.fadeSpeed);
				});
            $('.sfondo').fadeOut(config.fadeSpeed, function(){				
				$('.sfondo').attr('src', base_path+selector+"/"+i+".jpg").fadeIn(config.fadeSpeed);
				});
        }, config.delay);
 
        return this;
			
	};
	
})	(jQuery);
il punto è che quando clicco su un nuovo oggetto, invece di caricare i nuovi dati nel selector sovrascrivendo i precedenti, li AGGIUNGE.
non capisco quindi se si debba interrompere il ciclo o c'è un altro errore da qualche altra parte..

help pls!