Получить window.document из всплывающего окна webextension

У меня есть расширение firefox, которое открывается в отдельном окне, и мне нужно получить доступ к объекту window.document всех открытых вкладок firefox. Я не смог найти способ сделать это, так как webextension api дает информацию только для чтения о вкладке, но не о самом объекте окна. Есть ли способ сделать это?


person Hayk Grigoryan    schedule 23.05.2017    source источник


Ответы (1)


Чтобы получить доступ к DOM страниц, вам необходимо внедрить Content Scripts в эти страницы. Это единственный компонент, который может получить доступ к document из обычных вкладок.

Скрипты контента

Если вам нужно делать это часто, вы можете внедрить скрипты контента через манифест. Если вам это нужно нечасто, рассмотрите возможность использования программного внедрения с browser.tabs.executeScript.

См. документацию MDN по сценариям контента.

person Xan    schedule 23.05.2017
comment
Спасибо, это помогает мне больше, только один вопрос. Кажется невозможным добавление content_scripts на страницу newtab или about:debugging или about:addons в firefox. Вы знаете, есть ли способ сделать это? - person Hayk Grigoryan; 23.05.2017
comment
Это правильно. Вы вообще не можете внедрять скрипты на привилегированные страницы. Вам нужно будет работать с этим в памяти. - person Xan; 23.05.2017