如何将 window 对象从活动选项卡发送到扩展?
How to send window object from active tab to extension?
我需要从某些选项卡获取用户存储数据(本地和会话),如 this 应用程序(下方屏幕)。
据我了解 - 我需要从活动选项卡中获取 window 对象。我有一个对象,但我可以在当前选项卡的控制台中使用它。
我需要在扩展的控制台中使用它(如何?)。我的目标是在 table 中显示此数据(这里没问题)。
manifest.json
{
"manifest_version": 2,
"name": "Test extension",
"description": "...",
"version": "1.0",
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html",
"default_title": "Click here!"
},
"permissions": [
"storage",
"tabs",
"activeTab",
"http://*/*",
"https://*/*",
"unlimitedStorage"
]
}
popup.js
document.body.onload = function() {
var obj = chrome.tabs.query({ currentWindow: true, active: true }, function (tabs) {
var tabId = tabs[0].id;
chrome.tabs.executeScript(tabId, {code:'var w = window; console.log(w);'});
});
});
如何将 window 对象从选项卡控制台发送到扩展控制台?
chrome.tabs.executeScript
有一个回调参数,它的值是脚本的结果(array),所以你可以用下面的代码得到window
当前网页的对象:
chrome.tabs.executeScript(tabId, {code:'window;'}, function(results) {
console.log(results[0]);
});
我需要从某些选项卡获取用户存储数据(本地和会话),如 this 应用程序(下方屏幕)。
据我了解 - 我需要从活动选项卡中获取 window 对象。我有一个对象,但我可以在当前选项卡的控制台中使用它。
我需要在扩展的控制台中使用它(如何?)。我的目标是在 table 中显示此数据(这里没问题)。
manifest.json
{
"manifest_version": 2,
"name": "Test extension",
"description": "...",
"version": "1.0",
"browser_action": {
"default_icon": "icon.png",
"default_popup": "popup.html",
"default_title": "Click here!"
},
"permissions": [
"storage",
"tabs",
"activeTab",
"http://*/*",
"https://*/*",
"unlimitedStorage"
]
}
popup.js
document.body.onload = function() {
var obj = chrome.tabs.query({ currentWindow: true, active: true }, function (tabs) {
var tabId = tabs[0].id;
chrome.tabs.executeScript(tabId, {code:'var w = window; console.log(w);'});
});
});
如何将 window 对象从选项卡控制台发送到扩展控制台?
chrome.tabs.executeScript
有一个回调参数,它的值是脚本的结果(array),所以你可以用下面的代码得到window
当前网页的对象:
chrome.tabs.executeScript(tabId, {code:'window;'}, function(results) {
console.log(results[0]);
});