是否有可能在控制檯中始終提供google-chrome中的自定義功能(無論加載哪個頁面)?例如,我想有一個名爲echo的函數,它只是console.log的一個包裝。這只是節省了一些輸入,但後來我可能想創建一些有用的調試功能。將自定義功能添加到Chrome控制檯中
14
A
回答
16
那麼這很容易完成。你需要的是創建一個content script。該腳本將被注入到任何頁面中,並創建一些必要的全局函數,您可以在控制檯中使用它們。最具挑戰性的部分是如何使這些自定義內容scrtip函數成爲您實際的window
對象的一部分,因爲通常您不能從內容中的其他javascript代碼訪問您在內容腳本中定義的函數或變量腳本。內容腳本運行在所謂的隔離環境中。
內容腳本在稱爲孤立世界的特殊環境中執行。他們可以訪問他們注入的頁面的DOM,但不能訪問頁面創建的任何JavaScript變量或函數。它會查看每個內容腳本,就好像其上運行的頁面上沒有執行其他JavaScript一樣。反過來也是如此:頁面上運行的JavaScript不能調用任何函數或訪問由內容腳本定義的任何變量。
但有一種奇特的解決方法。
定義您的清單文件,如下所示:
manifest.json的
{
"name": "Content script",
"version": "0.1",
"manifest_version": 2,
"content_scripts": [{
"matches": ["http://*/*"],
"js": ["console.js"]
}]
}
和內容腳本:
console.js
function customConsole() {
window.myNewFunction = function() {
console.log("Hello I'm available from console.");
};
}
var script = document.createElement('script'),
code = document.createTextNode('(' + customConsole + ')();');
script.appendChild(code);
(document.body || document.head || document.documentElement).appendChild(script);
所以您指定你的新功能就像全球功能一樣你可以在console
中使用它們。
也看看這個post
+2
你和鉻巖!這真的很簡單。我可以迴應(「hello world!」);在五分鐘內:)。 – clime 2012-01-29 08:18:05
相關問題
- 1. 將自定義點擊事件綁定到Chrome控制檯上
- 2. 添加自定義ViewLocator到控制器
- 3. PyQt4:將QtMessageBox.information功能添加到自定義窗口中
- 4. 將列功能添加到自定義中繼器
- 5. 將自定義控件添加到DataGridViewCell
- 6. 將自定義控件添加到MoviePlayer
- 7. 將控制檯添加到Jframe中
- 8. 添加將功能添加到現有自定義航點功能中的功能
- 9. 將自定義日誌位置添加到OS X控制檯應用程序
- 10. .NET自定義控制檯
- 11. 如何將自定義排序功能添加到jQuery網格?
- 12. 將自定義功能添加到頻道
- 13. 如何將自定義功能添加到WordPress
- 14. 將GUI添加到C++ win32控制檯
- 15. 無法將自定義視圖控制器添加到UIScrollVIew
- 16. 將自定義視圖控制器添加到故事板
- 17. 將自定義屬性添加到常見控制問題
- 18. 將自定義的基於URL的控制器添加到WordPress
- 19. 將控制權添加到自定義基頁
- 20. 將自定義按鈕添加到導航控制器
- 21. 自定義功能添加在Excel 2013
- 22. 添加自定義控制器目錄
- 23. WordPress:爲自定義功能添加自定義add_filter
- 24. 如何在wordpress中添加自定義類到功能
- 25. 使用Chrome控制檯的參數運行自定義函數
- 26. 將事件添加到ASP.NET中的自定義控件中
- 27. 將自定義矩形添加到自定義RelativeLayout中
- 28. 將ShowDialog添加到自定義用戶控件中?
- 29. 將觸發器添加到WPF自定義控件中
- 30. 將第二個地址欄添加到此自定義功能中(Filemaker Pro)
也許你可以創建一個插件。控制檯相對於當前頁面工作,所以它應該是可行的。 – Blender 2012-01-29 05:45:49
感謝您指向插件的方向。讓我們看看我是否「足夠慵懶」,真正爲那個包裝做一個... – clime 2012-01-29 06:20:15