Регистрация веб-обработчиков протоколов уже давно стандартизована и происходит путём вызова navigator.registerProtocolHandler()
, но проблема в том, что в современных версиях Firefox a) нельзя использовать JavaScript в строке запроса и b) по-умолчанию зарегистрировать обработчик можно только ровно на том же домене, куда ссылается параметр адреса.
Итак, подробный гайд для Outook.com:
- Открываем
about:config
- Переключаем параметр
gecko.handlerService.allowRegisterFromDifferentHost
вtrue
- Открываем консоль (
ctrl-shift-k
) и выполняем в ней следующую строку:navigator.registerProtocolHandler("mailto", "https://mail.live.com/secure/start?action=compose&to=%s", "Outlook.com")
- Вверху страницы должно всплыть подтверждение добавлять этот новый обработчик или нет
- Переключаем параметр
gecko.handlerService.allowRegisterFromDifferentHost
обратно вfalse
Из смежных вопросов можно затронуть тему добавления своего обработчика RSS на примере feedly:
- Открываем
about:config
- Ищем блок настроке, начинающихся на
browser.contentHandlers.types
- Как легко заметить, нам достаточно добавить новый обработчик с номером
n+1
, состоящий из трёх строковых записей:title=feedly
type=application/vnd.mozilla.maybe.feed
uri=https://feedly.com#subscription%2Ffeed%2F%s
Добавить комментарий