a dire la sincera verità mi fa questa cosa solo con firefox e mozilla, cmq questo è lo script:

codice:
/* funzione di ricerca */
// inizio timer
timer = new Date();
var tempoIniziale = Math.round(timer.getTime()/1000);
var stato = '<%= stato %>'
mainFinestra=""
function cercaFlash(movie,livelloNuovo,x,y,movieRif){
	var IE = navigator.userAgent.indexOf("Microsoft")!= -1;
	if (stato == ""){
		if (window.opener == null  || !window.opener || opener.closed){
			stato = "mF";
			mainFinestra = window.open('MainCartina2.asp','MainCartina','scrollbars=yes, toolbar=yes, status=yes, menubar=yes, location=yes, resizable=yes');
			var filmato = IE ? mainFinestra.mainCartina : mainFinestra.document.mainCartina;	
			// crossborwser Opera7.5
			if (filmato == "[object HTMLEmbedElement]"){filmato = undefined 
			}
			//
			while (filmato == undefined){
				var filmato = IE ? mainFinestra.mainCartina : mainFinestra.document.mainCartina;	
				timer = new Date();
				var tempoFinale = Math.round(timer.getTime()/1000);
				if (tempoFinale-tempoIniziale == 60){
					Errore();
					break;
				}
				if (filmato != undefined){
					var filmato = IE ? mainFinestra.mainCartina : mainFinestra.document.mainCartina;
					timer = new Date();
					tempoIniziale = Math.round(timer.getTime()/1000);
					break;
				}
			}
			PosizionePrincipale = filmato.TCurrentLabel("_level0");
			while (PosizionePrincipale != "arrivo"){
				PosizionePrincipale = filmato.TCurrentLabel("_level0");
				timer = new Date();
				var tempoFinale = Math.round(timer.getTime()/1000);
				if (tempoFinale-tempoIniziale == 60){
					Errore();
					break;
				}
				if (PosizionePrincipale == "arrivo"){ 
					timer = new Date();
					tempoIniziale = Math.round(timer.getTime()/1000);
					break;
				}
			}
		}
		else if (window.opener){
			var filmato = IE  ? opener.mainCartina : opener.document.mainCartina;
		}
	// chiudo l'if stato =""
	}
	else if (!window.opener  || opener.closed  || (window.opener == null)){
		mainFinestra = window.open('','MainCartina','scrollbars=yes, toolbar=yes, status=yes, menubar=yes, location=yes, resizable=yes');
		var filmato = IE ? mainFinestra.mainCartina : mainFinestra.document.mainCartina;
	}
	// viene selezionato il filmato in base a dove si ci trova
	var livelloV = filmato.GetVariable("_level0.livello");
	var livelloN = "_level"+livelloNuovo;
	var settoreV = filmato.GetVariable("_level0.settore");	

	// se ci troviamo su maincartina level0
	if (livelloV == "_level0"){
		// impostiamo per andare a level1 o level2
		sceltaLivello(filmato,movie,movieRif,x,y,livelloN);
	}		
	// se siamo a level1
	else if (livelloV == "_level1"){
		sceltaMovie(filmato,movie,movieRif,x,y,livelloN,settoreV);
	}
	// se siamo a level2
	else if (livelloV == "_level2"){
		// se siamo sullo stesso movie
		if (settoreV == movie){
			risultato(filmato,movie,movieRif,x,y,livelloN)
		}
		// se siamo su un'altro movie
		else if (settoreV != movie){
		// fai partire il filmato in modo tale da scaricarsi e aspetta finche non si scarica ad andare avanti
			filmato.TPlay("_level2");
			posizione = filmato.TCurrentFrame("_root._level2");
			while (posizione != "-1"){
				posizione = filmato.TCurrentFrame("_root._level2");
				timer = new Date();
				var tempoFinale = Math.round(timer.getTime()/1000);
				if (tempoFinale-tempoIniziale == 60){
					Errore();
					break;
				}								
				if (posizione == "-1"){
					break;
				}
			}
			sceltaLivello(filmato,movie,movieRif,x,y,livelloN);
		}
	}
}

function direzione(){
	if (!mainFinestra || mainFinestra.closed){
	document.form1.stato.value = ""
	}
	else{
	document.form1.stato.value = stato
	}
}	


/* queste funzioni servono per adagiare la navigazione all'interno della funzione successiva ed evitare ripetizioni di codice.
*/

// questa funzione permette di comportarci in base alla scelta del settore del movie
function sceltaMovie(filmato,movie,movieRif,x,y,livelloN,settoreV){
// se siamo sullo stesso movie
		if (settoreV == movie){
			risultato(filmato,movie,movieRif,x,y,livelloN)
		}
		// se siamo su un'altro movie
		
		else if (settoreV != movie){
			filmato.TPlay("_level1");
			sceltaLivello(filmato,movie,movieRif,x,y,livelloN);
		}
}


// posiziona la freccia e da il risultato
function risultato(filmato,movie,movieRif,x,y,livelloN){
	filmato.TSetProperty("_root."+livelloN+".freccia", 0, x);
	filmato.TSetProperty("_root."+livelloN+".freccia", 1, y);
	$("caricamento").style.display ="none";
	inizializza("caricato");
	$("caricato").style.display ="block"; 
	top.focus(); 
	self.focus();
}


// seleziona il movie scelto dal motore
function sceltaLivello(filmato,movie,movieRif,x,y,livelloN){ 
// se dobbiamo andare a level1
	if (livelloN == "_level1"){

			filmato.TSetProperty("_level0", 7, 0);
			filmato.LoadMovie(1, movie);
			posizione = filmato.TCurrentLabel("_root._level1");
			while (posizione != "arrivo"){
				posizione = filmato.TCurrentLabel("_root._level1");
				timer = new Date();
				var tempoFinale = Math.round(timer.getTime()/1000);
				if (tempoFinale-tempoIniziale == 60){
					Errore();
					break;
				}								
				if (posizione == "arrivo"){
					break;
				}
			}		
			risultato(filmato,movie,movieRif,x,y,livelloN);
		}
		// se dobbiamo andare a level2
		else if (livelloN == "_level2"){
			filmato.TSetProperty("_level0", 7, 0);
			filmato.LoadMovie(1, movieRif);
			posizione = filmato.TCurrentLabel("_root._level1");
			while (posizione != "arrivo"){
				posizione = filmato.TCurrentLabel("_root._level1");
				timer = new Date();
				var tempoFinale = Math.round(timer.getTime()/1000);
				if (tempoFinale-tempoIniziale == 60){
					Errore();
					break;
				}
				if (posizione == "arrivo"){
					break;
				}
			}
			filmato.TSetProperty("_level1", 7, 0);
			filmato.LoadMovie(2, movie);
			posizione = filmato.TCurrentLabel("_root._level2");
			while (posizione != "arrivo"){
				posizione = filmato.TCurrentLabel("_root._level2");
				timer = new Date();
				var tempoFinale = Math.round(timer.getTime()/1000);
				if (tempoFinale-tempoIniziale == 60){
					Errore();
					break;
				}
				if (posizione == "arrivo"){
					break;
				}
			}
			risultato(filmato,movie,movieRif,x,y,livelloN);
		}

}
Grazie per il tuo interesse,
Ciao.