2009-07-13 7 views

Répondre

15

ExternalInterfaceUtil.addExternalEventListener ("window.onunload", handleLogout, "unloadFlex"); Je ne me souviens pas d'où je l'ai eu, mais je l'ai utilisé et ça marche plutôt bien. Bien sûr, tous les navigateurs ne vont pas coopérer, mais c'est mieux que rien ...

+0

Cela fonctionne très bien. Toute idée sur comment écouter "l'utilisateur a cliqué sur le bouton OK dans la fenêtre contextuelle JS" à partir d'un programme flexible? –

1

Vous pouvez utiliser une combinaison de Javascript et de Flash pour obtenir ce que vous recherchez.

Utilisez le Javascript pour détecter quand l'utilisateur navigue loin de la page. Utilisez l'événement javascript pour appeler votre film Flash à l'aide de ExternalInterface. Une fois votre code appelé, vous pouvez gérer l'événement selon vos besoins.

+0

interface externe je peux manipuler .. comment voulez-vous vérifier en javascript? –

+0

Javascript a un événement window.onunload auquel vous pouvez attacher une fonction. Malheureusement, certains navigateurs n'appellent pas toujours l'événement onunload lorsque l'utilisateur ferme la fenêtre en raison d'un abus par le passé. Je sais pertinemment que Opera ne le fait pas, je ne suis pas sûr des autres. – Powerlord

1

Ce qui précède a bien fonctionné pour moi à une exception près: si je retourne null comme chaîne, je ne veux pas de message à pop en haut Cela fonctionne pour tous les navigateurs sauf IE, ce qui ouvre une boîte de dialogue qui dit "null".

qui peut être corrigée en modifiant une ligne à ajouter un chèque null:

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