Обнаружение моего собственного расширения Firefox с веб-страницы - PullRequest
5 голосов
/ 21 февраля 2011

Я пытаюсь найти простой способ определить, установлено ли мое расширение в Firefox 3.6. Это должно быть сделано с веб-страницы, возможно, с использованием JavaScript.

Я читал много блогов, в которых говорится, что я должен попытаться загрузить изображение из моего расширения. Поскольку у меня есть расширение, и я могу написать код, это кажется ненужным хаком.

Я также думал об установке глобальной переменной для веб-документа, но мне не удалось этого добиться. Я думал, что смогу написать:

top.window.content.document.hasMyPlugin = true

но это, похоже, не работает (hasMyPlugin не определен). Я добавляю эту переменную только при посещении своего домена (я добавил WebProgressListener и проверил свойство хоста), поэтому загрязнение пространства имен не должно быть проблемой.

Есть идеи?

UPDATE

Я пытаюсь получить доступ к переменной просто if(hasMyPlugin) или if(document.hasMyPlugin) ... Возможно, я обращаюсь к ней неправильно?

Ответы [ 2 ]

4 голосов
/ 22 февраля 2011

Один простой способ - заставить ваше расширение реагировать на пользовательское событие. Ваша веб-страница отправляет событие на соответствующую цель события (вы можете использовать документ, если у вас нет ничего лучше), а затем прослушиватель событий вашего добавочного номера может проверить адрес веб-страницы и выполнить действие. Как минимум, ваш прослушиватель событий может вызывать warnDefault () для события; веб-страница может затем вызвать getPreventDefault (), чтобы увидеть, присутствует ли ваше расширение.

0 голосов
...