--- title: Плагины slug: Plugins translation_of: Archive/Plugins ---

Плагин - это разделяемая библиотека, которую пользователи могут установить для показа содержимого, которое приложение само по себе отображать не может. Например, плагин Adobe Reader позволяет пользователю просматривать файлы PDF прямо внутри браузера, а плагины QuickTime и RealPlayer используются для проигрывания специальных видеоформатов на веб-странице.

Плагины могут быть полезны при создании приложений с использованием фреймворка Mozilla. Например, ActiveState Komodo использует плагины для внедрения редактора Scintilla в пользовательский интерфейс, основанный на XUL.

Плагины пишут при помощи NPAPI, кроссбраузерного API для плагинов. Основной источник документации по NPAPI - Gecko Plugin API Reference. Чтобы получить доступ к функциям плагина из веб-страницы, используйте npruntime. Старые, основанные на XPCOM и LiveConnect API для плагинов использовать не стоит. Эти технологии сами по себе по-прежнему используются, только не для плагинов.

Плагины можно написать полностью с нуля, используя C API (обычно на C или C++), или они могут быть посторены на фреймворке, таком как Firebreath, JUCE, или QtBrowserPlugin. Также есть средства кодогенерации, которые могут быть полезны. Больше информации о них можно найти на странице External Resources.

Вы можете использовать SVG или Canvas для более простых задач управления графикой и анимацией из скрипта.

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

Документация

Gecko Plugin API Reference (NPAPI)
Эта ссылка описывает интерфейсы прикладного программирования для плагинов NPAPI и предоставляет информацию о том, как использовать эти интерфейсы.
Scripting plugins (npruntime)
В этой ссылке описываются новые межплатформенные расширения NPAPI, которые позволяют плагинам быть доступными для сценариев, а также позволяют им обращаться к объектам сценария в браузере.
Gecko SDK
Gecko SDK содержит все инструменты и заголовки, необходимые для создания плагинов для скриптов для Gecko, включая последние npapi.h и связанные с ними заголовки и инструменты.
Out of process plugins
Firefox 3.6.4 представил плагины вне процесса, которые выполняются в отдельном процессе, так что сбойный модуль не приводит к сбою в работе браузера.
Shipping a plugin as a Toolkit bundle
Плагины могут поставляться в комплекте Toolkit, что позволяет пользователю легко устанавливать, удалять и управлять своими личными плагинами.
Detecting Plugins
Как использовать JavaScript для определения, установлен ли плагин, и предложения о том, что делать, если это не так.
Supporting private browsing in plugins
В Firefox 3.5 появилась поддержка частного просмотра; Узнайте, как сделать так, чтобы ваш плагин уважал пожелания пользователя о конфиденциальности.
Multi-Process Plugin Architecture
Как Firefox загружает плагины в отдельный процесс
Logging and Debugging for Multi-Process Plugins
Как создать журнал подключаемых модулей, чтобы помочь в отладке проблем с многопроцессорными плагинами.
Writing a plugin for Mac OS X
Узнайте, как написать плагин для Mac OS X; Предоставляется проект шаблона Xcode.
Monitoring Plugins
Используйте уведомление службы наблюдателя, чтобы контролировать количество времени, затрачиваемое на выполнение вызовов в плагинах. Это может быть полезно при попытке определить, потребляет ли подключаемый модуль слишком много ресурсов.
Scripting Plugins: Macromedia Flash
В этой статье объясняется, как JavaScript может использоваться для доступа к методам из Flash-плагина, а также как функция FSCommands может использоваться для доступа к функциям JavaScript из Flash-анимации.
Plugins: The First Install Problem
В этой статье объясняется, как JavaScript может использоваться для доступа к методам из Flash-плагина, а также как функция FSCommands может использоваться для доступа к функциям JavaScript из Flash-анимации.
ActiveX Control for Hosting Netscape Plug-ins in IE
Microsoft удалила поддержку подключаемых модулей Netscape с IE 5.5 SP2 и последующих версий. Если вы автор плагина, вы можете найти этот проект, который поможет вам сэкономить много работы!
Plugins: Samples and Test Cases
Образцы плагинов NPAPI и тестовые примеры.
External Resources for Plugin Creation
Внешние проекты, фреймворки и сообщения в блогах, которые могут быть полезны.
XEmbed Extension for Mozilla Plugins
Недавние версии Mozilla для систем на базе * nix включают расширение для написания плагинов, которые используют XEmbed, вместо использования старого основного цикла, основанного на Xt, который большинство плагинов используют с Netscape 3.x дней.

View All...

Сообщество

  • View Mozilla forums...

{{ DiscussionList("dev-tech-plugins", "mozilla.dev.tech.plugins") }}

Extensions, SVG, Canvas

Categories

Interwiki Language Links

 

{{ languages( { "de": "de/Plugins", "es": "es/Plugins", "fr": "fr/Plugins", "ja": "ja/Plugins", "pl": "pl/Wtyczki", "pt": "pt/Plugins", "ko": "ko/Plugins" } ) }}