Event onBrowserFermer pour l'extension Google Chrome?
Je suis en train d'élaborer une extension pour Google Chrome. Mon fond de script, à chaque fois, autorise sur un serveur qui utilise le protocole XMPP API, et souscrit pour une PubSub nœud. J'ai besoin de vous désabonner à la sortie, sinon le mannequin abonnements resteront sur le serveur. Est-Il onBrowserClose
événement dans Google Chrome Extension Api?
source d'informationauteur simple | 2010-08-02
Vous devez vous connecter pour publier un commentaire.
Il n'existe pas un tel événement, le Chrome, l'Extension de l'API.
Il y a cependant une
chrome.windows.onRemoved
événement qui se déclenche à chaque fois qu'une fenêtre se ferme. J'ai pensé que vous pourriez vérifier dans ce cas si vous avez fermé la fenêtre, mais malheureusement, en raison de la nature asynchrone de google Chrome, cela ne fonctionne pas.Ce que j'ai essayé était une simple requête AJAX dans le
onRemoved
gestionnaire d'événement. La requête AJAX n'a jamais pu le serveur, que Chrome avait déjà fermé avant l'exécution de l'événement (ou tout simplement ignoré).Faire la réponse finale: Pas, actuellement, vous ne pouvez pasautant que je sache. Vous pourriez étoiles à la suite de rapport de bug à http://crbug.com/30885 de se faire remarquer sur les mises à jour.
Si vous attrapez le cas lorsque le nombre d'onglets ouverts est 0, vous pouvez le traiter comme un Chrome événement onClose. Dans mon cas, je dois annuler une notification du bureau, avant le Chrome se ferme parce qu'il a été s'écraser contraire.
Voilà comment j'ai fait:
1. Initialiser une variable num_tabs en utilisant les éléments suivants:
2. Incrément num_tabs lorsqu'un onglet est créé:
3. Décrémenter num_tabs lorsqu'un onglet est supprimé et exécuter votre navigateur événement onclose gestionnaire si num_tabs = 0