Регистрация веб-обработчиков протоколов уже давно стандартизована и происходит путём вызова 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=feedlytype=application/vnd.mozilla.maybe.feeduri=https://feedly.com#subscription%2Ffeed%2F%s

Leave a Reply