Ho un problema con l'apertura a popUp di una pagina.
La funzione js descritta sotto viene richiamata alla pressione di un pulsante da una pagina che imposta
codice:
document.domain = 'nomedominio.net'
Questa stessa riga è presente anche sulla pagina che verrà aperta come popup.
Così com'è scritta la funzione non da problemi, ma commentando
codice:
splashWin.blur();
if (confirm("procedere?")==false)
{
	splashWin.close();
	return;
}
il caricamento viene interrotto con errore "accesso negato".
Le pagine ovviamente sono entrambe sotto lo stesso dominio.
Il document.domain è impostato correttamente, altrimenti non funzionerebbe in entrambi i casi.
Sostituendo al blocco di codice, un timeout o un ciclo while che ritardi l'esecuzione del codice successivo viene restituito sempre lo stesso errore.
La mia ipotesi è che nel momento dell'esecuzione della riga
codice:
splashWin.document.body.innerHTML = parent.MainFrame.document.all.contenitore.innerHTML;
la pagina non sia ancora caricata completamente o il document.domain su questa pagina non sia ancora impostato correttamente.(ricordo che con un timeout di 30 secondi non funziona, così pure testando il document.readyState).

Cosa blocca l'alert (in questo caso il confirm) per far funzionare il tutto??



codice:
function EEMF_Open() {
	var W=700;
	var H=500;
	var windowW=W;
	var windowH=H;
	var windowX=Math.ceil((window.screen.width-windowW)/2);
	var windowY=Math.ceil( (window.screen.height-windowH)/2 );
	
	H=H+20+2;
	W=W+2;
	
	splashWin=window.open(EEMF_ROOT+"blank.html",
						  "_blank",
		                  "fullscreen=0,toolbar=0,location=0,directories=0,status=1,menubar=0,scrollbars=1,resizable=no,width="+W+",height="+H+"");
	
	splashWin.blur();
	if (confirm("procedere?")==false)
	{
		splashWin.close();
		return;
	}
	
	splashWin.document.body.innerHTML = parent.MainFrame.document.all.contenitore.innerHTML;

	splashWin.focus();
	splashWin.print();
	splashWin.close();
}