我想添加面板UI到Chrome devtools窗口並顯示一些關於當前加載頁面的信息。 爲了獲取信息,我想在加載頁面之前注入一些JavaScript代碼,以便我可以更改某些方法的行爲。是否可以從Chrome開發人員工具窗口將JavaScript注入當前加載的頁面?
我用下面的代碼進行測試:
的manifest.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"
}]
}
devtools.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)似乎永遠不會被注入到加載的頁面中。 有沒有關於這方面的任何建議?
您可以在腳本的第一行設置斷點,編輯它並繼續... – Uooo 2013-03-01 08:11:04
我認爲我完成了。 – kuu 2013-03-01 08:13:53
這是否解決了您的問題?如果是這樣,我想發佈這個答案,以便將來的讀者快速找到解決方案。 – Uooo 2013-03-01 08:17:05