…Как понимаю, вы уже прочитали общий обзор и хотите поглубже разобраться что и как в этом аддоне…) Всё верно, работа с любым расширением требует знания и понимания всех его особенностей, это позволит вам избежать "непонятных" проблем при эксплуатации аддона. В этой статье: Отличия от оригинала и аналоговПо отношению к исходному аддону и его функциональным аналогам в CopyOpen RU имеются следующие отличия:
Технические детали разработкиНиже приведены некоторые технические подробности по исходному коду и отдельным функциям расширения. Исходный код, интерфейс и APICopyOpen RU не использует для работы никакие сторонние библиотеки (привет любителям JQuery)). В коде применён только чистый JS (ES5), все неподдерживаемые в "старых" браузерах функции заменены на аналоги. В аддоне отсутствует постоянный фоновый процесс, он не расходует ресурсы браузера "в покое", основная функция расширения выполняется с помощью автозагружаемого скрипта, который также автоматически выгружается из памяти после отработки необходимых действий (функция быстрой выгрузки). Основное отличие от функциональных аналогов – в форке полностью отсутствует какой-либо интерфейс, требующий дополнительного html-кода, всё работает только за счёт чистого JS-кода в единственном скрипте. В общем, всё максимально компактно и "заточено" на оперативное решение задачи реально в один клик.) Для помещения в буфер обмена результатов работы в манифесте запрашивается разрешение [ "clipboardWrite" ]. Для запуска основной функции через контекстное меню страницы применяется стандартный API chrome.contextMenus. Для открытия полученной ссылки в новой вкладке задействуется API chrome.tabs. Запрос отдельного разрешения [ "tabs" ] в манифесте при этом необязателен и не указан. В отличие от оригинала, в манифесте отсутствует запрос каких-либо особых разрешений (секция "permissions"), для решения задачи расширению достаточно установок по умолчанию. Об этом прямо сказано в сводке свойств расширения в его блоке на странице chrome://extensions:
При этом также не требуется указания разрешения на работу с локальными файлами, но, хотя в блоке аддона на странице chrome://extensions соответствующий переключатель отсутствует, копирование URL и открытие таких файлов доступны полностью. Дополнительные примечания по кодуПрактических ограничений по версии браузера не имеется, используемые API работают в версиях 31+. Язык интерфейса – только русский (локализация жёсткая, зашита в коде), другие* локализации отсутствуют. Это связано со значительным упрощением кода и повышением скорости его работы, а также с тем, что при создании расширения автор в первую очередь ориентируется на русскоязычных пользователей. * Впрочем, если "дело пойдёт", прикрутить ещё и "басурманский" не является особой проблемой…) Ссылки для интересующихся
| ||||||||||
Бармалей 15.04.2015 17.10.2020 232 Общие технические сведения о разработке
|
Всего комментариев: 0 |