我正在开发Google Chrome扩展程序。我想获取活动选项卡的内容(仅文本)。我确信内容脚本可以帮助我找到我要找的东西。
但我陷入了以下情况:
如果我运行我的chrome.tabs.onUpdated.addListener(function(){在我的background.js中,我可以完成其他任务,比如ajax post等。但是如果我在那个chrome中包含document.body.innerHTML .tabs.onUpdated.addListener(function(){,获取打开的选项卡的内容,它提醒我的background.html的内容,而不是浏览器中打开的选项卡的内容。
如果我在我的内容脚本中粘贴chrome.tabs.onUpdated.addListener(function(){,我无法捕获标签更新。
我能知道我哪里出错吗?
答案 0 :(得分:1)
试试这样:
// In background.js
chrome.tabs.onUpdated.addListener(function (tabId, changeInfo, tab) {
if (changeInfo.status === 'complete') {
chrome.tabs.sendMessage(tabId, {type: 'getDoc'}, function (doc) {
console.log(doc);
});
}
});
// In content_scripts.js
chrome.extension.onMessage.addListener(function(request, sender, response) {
if (request.type === 'getDoc') {
response(document.body.innerHTML);
}
return true;
});