2009-07-13 17 views

risposta

15

ExternalInterfaceUtil.addExternalEventListener ("window.onunload", handleLogout, "unloadFlex");

Non ricordo da dove ho preso questo, ma l'ho usato e funziona piuttosto bene. Naturalmente non tutti i browser collaboreranno, ma è meglio di niente ...

+0

Funziona in modo fantastico. Qualche idea su come ascoltare "l'utente ha fatto clic su OK nel popup di JS" all'interno di un programma flessibile? –

1

È possibile utilizzare una combinazione di Javascript e Flash per ottenere ciò che si sta cercando.

Utilizzare Javascript per rilevare quando l'utente si allontana dalla pagina. Utilizzare l'evento javascript per chiamare nel filmato Flash utilizzando ExternalInterface. Una volta chiamato il tuo codice, puoi gestire l'evento secondo necessità.

+0

interfaccia esterna posso gestire .. come si fa a controllare che in javascript? –

+0

Javascript ha un evento window.onunload a cui è possibile allegare una funzione. Sfortunatamente, alcuni browser non chiamano sempre l'evento onunload quando l'utente chiude la finestra a causa di un abuso in passato. Lo so per certo che Opera no, non sono sicuro degli altri. – Powerlord

1

Quanto sopra ha funzionato alla grande con una sola eccezione: se restituisco null come stringa, non voglio che venga visualizzato alcun messaggio su. Funziona su tutti i browser tranne IE, che visualizza una finestra di dialogo che dice "null".

che può essere corretto alterando una riga per aggiungere un controllo nullo:

var jsBindEvent:String = "function(){"+qualifiedEventName+"= function(){if (" + jsExecuteCallBack + ") return "+jsExecuteCallBack+"};}"; 
Problemi correlati