Détection de ma propre extension Firefox à partir d'une page Web

J'essaie de trouver un moyen simple de détecter si mon extension est installée dans Firefox 3.6. Cela devrait être fait à partir d'une page Web, probablement en utilisant javascript.

J'ai lu beaucoup de blogs qui me disent que je devrais essayer de charger une image de mon extension. Puisque je possède l'extension, et je peux écrire le code, cela semble être un hack inutile.

J'ai également pensé à établir une variable globale sur le document Web, mais je n'ai pas réussi à y parvenir. Je pensais pouvoir écrire:

top.window.content.document.hasMyPlugin = true

Mais cela ne semble pas fonctionner (hasMyPlugin n'est pas défini). Je n'ajoute que cette variable lors de la visite de mon domaine (j'ai ajouté WebProgressListener et vérifie la propriété hôte), donc la pollution de l'espace de noms global ne devrait pas poser problème.

Des idées?

METTRE À JOUR

La façon dont j'essaie d'accéder à la variable est simplement if(hasMyPlugin) ou if(document.hasMyPlugin) … Peut-être que je l'accède de la mauvaise façon?

Une façon simple est de rendre votre extension réagir à un événement défini par l'utilisateur. Votre page Web diffuse l'événement sur une cible d'événement appropriée (vous pouvez utiliser le document si vous n'avez rien de mieux) et l'auditeur d'événement de votre extension peut vérifier l'adresse de la page Web et effectuer une action. Au minimum, votre auditeur d'événement pourrait appeler preventDefault () sur l'événement; La page Web pourrait alors appeler getPreventDefault () pour voir si votre extension est présente.

Voir ici: Autoriser les documents de contenu (pages Web) à détecter mon addon Firefox