我想在 Chrome devtools 窗口中添加一个面板 UI,并显示有关当前加载页面的一些信息。为了获取信息,我想在页面加载之前注入一些 JavaScript 代码,这样我就可以改变一些方法的行为。
我使用以下代码进行了测试:
清单.json
{
"name": "Test Dev Panel",
"version": "0.1",
"description": "Extends the Developer Tools, replacing Array.toString() with a bogus one.",
"devtools_page": "devtools.html",
"manifest_version": 2,
"permissions": ["<all_urls>"],
"content_scripts": [{
"matches": ["http://*/*"],
"js": ["bogusarray.js"],
"run_at": "document_start"
}]
}
开发工具.js
chrome.devtools.panels.create("Text Dev Panel",
"img/iconDev.png",
"panel.html");
bogusarray.js
Array.prototype.toString = function () {
return 'Injected!';
};
但是,由于 Array.toString() 的行为没有改变,JavaScript (bogusarray.js) 似乎从未注入到加载的页面中。对此有什么建议吗?