Как написать плагин для Firefox
Хотя данный вопрос не имеет прямого отношения к созданию сайтов, его рассмотрение точно не будет лишним. Прежде всего, если вы напишете свой плагин для Firefox, то сможете повысить посещаемость своих сайтов, добавив в плагин рекламу проектов в том или ином виде. Если ваш плагин будет полезен широкому кругу людей, вы получите немало трафика со своей страницы разработчика на Mozilla.org и жирную ссылку с нее же.
Первый и самый сложный вопрос, который вам предстоит решить, если вы собрались написать плагин для Firefox – что он будет делать. От функционала вашего продукта будет зависеть его популярность. Понятно, что еще один калькулятор или редактор с подсветкой синтаксиса вряд ли сможет заинтересовать многих пользователей. А вот какой-нибудь SEO-инструмент, например, определяющий плотность ключевых слов на странице, вполне мог бы заинтересовать многих пользователей.
Самый простой способ научиться делать плагины для Firefox – исследовать уже существующие. Попробуйте найти простенькое дополнение, например, для подсветки ключевых слов в тексте страницы. Вы можете сразу установить плагин в ваш браузер, и потом найти расширение в каталоге с установленной программой (В Window это обычно директория "C:\Documents and Settings\ ... \Application Data\Mozilla\Firefox\Profiles\ … \extensions\"). Также вы можете просто сохранить на диске установочный файл с расширением ".xpi". Кстати, и xpi- и jar- файлы, которые вы можете наблюдать в каталоге с расширениями Firefox, представляют собой ни что иное, как zip-архивы, которые можно без труда распаковать архиватором, если изменить расширение на соответствующее.
В корневом каталоге плагина для Firefox наиболее важные файлы: chrome.manifest и install.rdf. Это xml-файлы, содержимое которых не нуждается в подробном комментировании. Более интересным для изучения будет каталог "chrome/content" плагина. Если вы установили простой плагин, то, скорее всего, в этом каталоге будет два файла: один - содержащий javascript-код, и файл с расширением ".xul", содержащий xml-код. К примеру, данный фрагмент кода в xul-файле:
<statusbar id="status-bar">
<statusbarpanel class="statusbarpanel-iconic" id="plaginname_spanel"
src="chrome://plaginname/content/plaginname.gif" onclick="plaginfunction();"
/>
позволяет добавить в статус бар вашего Firefox кнопку с картинкой plaginname.gif (ее необходимо разместить в соответствующем каталоге), по нажатию на которой будет вызвана функция "plaginfunction".
Код функции необходимо разместить в js-файле. Это обычный javascript. Так, например, вы можете вызвать диалоговое окно:
function plaginfunction()
{alert "Мой плагин для Firefox";}
Обратите внимание, что если вы используете русские символы, то сохранять файл нужно в кодировке UTF-8.
Несколько иначе придется пользоваться такой привычной функцией, как getElementById и иже с ней. Если вы хотите получить идентификатор элемента открытого во вкладке браузера документа, нужно делать это так:
window._content.getElementById('elementid');
Следует также отметить следующие полезные функции:
window.addEventListener("load",function() {plaginfunction();},true);
window.addEventListener("focus",function() {plaginfunction();},true);
Их необходимо использовать, если необходимо обновить данные при загрузке документа или при переходе по вкладкам браузера.
В заключении вы можете упаковать файлы своего плагина в zip-архив и переименовать его в файл с расширением ".xpi".
Если вы хотите выложить плагин для Firefox на своем сайте, в файле .htaccess каталога с ".xpi"-файлами необходимо добавить следующую инструкцию:
AddType application/x-xpinstall .xpi
Теперь, запросив файл с плагином на вашем сайте, посетители смогут увидеть
в браузере диалог установки плагина.
