Для этого вам нужно будет использовать Передача сообщений . Передача сообщений необходима для того, чтобы вы могли общаться с DOM, и единственный способ связи с DOM - через Content-Scripts. Я покажу вам два способа, которыми вы можете сделать это:
Метод 1
Прослушивание каждой просматриваемой страницы запроса на расширение
background.html
<html>
<script>
chrome.tabs.getSelected(null, function(tab) {
chrome.tabs.sendRequest(tab.id, {method: "getHTML"}, function(response) {
console.log(response.data);
});
});
</script>
</html>
content_script.js
chrome.extension.onRequest.addListener(function(request, sender, sendResponse) {
if (request.method == "getHTML")
sendResponse({data: document.getElementById('header').innerHTML});
else
sendResponse({}); // snub them.
});
Метод 2
Выполнять скрипт содержимого можно только тогда, когда вам нужно:
background.html
<html>
<script>
chrome.browserAction.onClicked.addListener(function(tab) {
chrome.tabs.executeScript(tab.id, {file: 'execute.js'});
});
chrome.extension.onRequest.addListener(function(request, sender, sendResponse) {
console.log('Data Recieved: ' + request.data);
});
</script>
</html>
execute.js
chrome.extension.sendRequest({data: document.getElementById('header').innerHTML});