Уровень контроля в коде надстройки браузера: как низко я могу пойти?
Никогда не написав надстройку для браузера, мне сложно сформулировать этот вопрос кратко (и поискать существующую работу). При просмотре новостного медиа-сайта, когда я нажимаю на ссылку на новостную статью, мне хотелось бы видеть только текст новостной статьи и запретить браузеру доступ к любому другому URL-адресу на исходной странице истории, включая изображения, видео и Объявления. Я могу сделать это в терминальном окне с помощью скрипта Perl: выпустить ссылку на URL, найти историю, проанализировав HTML, извлечь и распечатать ее - или, как скрипт CGI, в окне браузера. Функционально эквивалентная надстройка браузера скажет, по сути, не захватывать тот URL, на который я только что нажал, позвольте мне получить его, позвольте мне проанализировать возвращаемую страницу, и позволю мне построить отображение ее содержимого с моими собственными приоритетами, Предусматривает ли модель надстройки браузера этот уровень контроля? Если так, где хороший учебник для начинающих?
1 ответ
Краткий ответ - да.
Если вы заинтересованы в создании дополнения Firefox/Chrome, вы должны использовать JavaScript, который является очень мощным языком. Все, что вы можете сделать в JavaScript на веб-странице, а также многое другое при использовании специфичных для браузера расширений API, возможно в дополнении. Если вы еще не знакомы с JavaScript, моя личная рекомендация для изучения - Сеть разработчиков Mozilla. Один из подходов к тому, что вы хотите сделать, состоит в том, чтобы найти теги привязки, которые ссылаются на статьи, а затем добавить к ним прослушиватели событий щелчков, которые запустят желаемую подпрограмму (скорее всего, загрузите HTML с помощью XMLHttpRequest или API 'fetch') и предотвратите поведение по умолчанию перехода по ссылке.