Расширение MenuButton

Представляем авторский обзор расширения в рамках нашей акции

Расширение для Google Chrome™ - MenuButton  (“Кнопка меню”) позволяет пользователям создавать свои собственные расширения–меню быстрого доступа к различным ресурсам сети без знания основ программирования. Расширение может быть полезно завсегдатаям форумов и социальных сетей для создания своей собственной системы меню, скрытой под одной кнопкой расширения Chrome. Вы также можете разместив меню в сети поделиться им с друзьями, став полноправным соавтором расширения.

Чтобы создать свое меню, необходимо создать свой XML файл с описанием создаваемого меню. Достаточно просто:

<?xml version="1.0" encoding="utf-8"?>
<menu>
<item>
<type>Тип элемента</type>
<icon>Имя файла с изображением иконки 32х32</icon>
<title>Название пункта меню</title>
<link>Ссылка на страницу или xml-файл</link>
<description>Всплывающая подсказка</description>
</item>
</menu>

<type> - тип элемента. Может принимать значения:

item - простой элемент меню – ссылка на ресурс сети. При выборе этого элемента будет открыта вкладка браузера со страницей, адрес которой указан в теге <link>.

file - этот элемент пытается открыть указанный в теге <link> файл на новой вкладке Chrome. Если открытие файлов этого типа в Chrome не предусмотрено, будет предложено сохранить файл на диске. Работает аналогично типу item, но в отличии от него ищет файл не в интернете, а в папке с меню. Удобен для представления различный справочных данных.

menu - ссылка на подменю – XML-файл, расположенный в этом же каталоге. При переходе на этот элемент меню в окне расширения будет отображено  новое подменю.

back - разновидность элемента меню, с дизайном обозначающем возврат к предыдущему меню.

separator - специальный тип, выводящий на экран горизонтальную разделительную линию.

feed - позволяет выводить во всплывающем окне новости RSS ленты, обработанной сервисом feedburner.google.com,  в виде пунктов  меню.

latestnews - отметив  пункт меню, созданный этим типом, мы даем указание расширению уведомлять пользователя Chrome о свежих новостях из указанного фида. Расширение сравнивает дату/время новостей в фиде с текущим последним временем уведомления о новостях, и если в фиде появятся свежие новости на экране появится окно уведомлений об этом. При загрузке нового меню, пункт latestnews всегда выключен. Поэтому, чтобы активизировать напоминания, пользователь должен включить этот пункт меню, щелкнув по нему левой кнопкой мыши.

search - позволяет задать в меню строку пользовательского поиска. Создайте свою систему пользовательского поиска (как это сделать очень подробно написано на соответствующем сайте службы Google).

API расширений Chrome предоставляет достаточно удобный инструментарий контекстно-зависимого меню, мне оставалось лишь применить его для целей настоящего расширения. Поддерживаются следующие типы элементов:

item - открывает на новой вкладке заданную ссылку с прикрепленным в конце в качестве параметра URL.  Если при нажатии правой кнопки мыши курсор установлен на ссылке в тексте, то передается её адрес. В противном случае – URL фрейма (если курсор указывает на  фрейм) или URL текущей страницы.

Подобным образом работают и следующие 4 типа контекстного меню.

text - добавляет к ссылке выделенный на странице текст.

image - добавляет к ссылке SRC указанного изображения.

video - добавляет к ссылке SRC указанного видео.

audio - добавляет к ссылке SRC указанного аудио.

Следует заметить, что эти типы меню являются контекстно зависимыми, то есть появляются на экране только, если, соответственно, есть выделение текста или курсор наведен на объект (изображение/видео/аудио).

Очень удобной является организация поиска с использованием контекстного меню. Для этого как и в popup-меню используется тип search. Этот тип меню также является контекстно-зависимым, то есть появляется на экране только при выделении текста.

В расширении реализована многоязычная поддержка. Если Вы хотите поддерживать свои меню на нескольких языках, достаточно для каждого языка создать соответствующий подкаталог внутри каталога меню и поместить в него все XML-файлы с меню на данном языке.

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

Установить MenuButton

Приятного серфинга!