一千萬個為什麽

搜索

我可以為Chrome頁面(下載,擴展程序等)制作Google Chrome擴展程序嗎?

我想做一個非常簡單的擴展,略微改變下載頁面的外觀。更改“歷史記錄”頁面可能也很有趣,但這適用於以後。

有沒有辦法做到這一點?

我嘗試使用< 內容腳本 擴展程序代碼>“chrome:// downloads”為 manifest.json 中的 match 。 Chrome不允許這樣做,並在打包擴展程序時響應錯誤。

Is there another simple way? It has to be simple, because changes would be simple, because all chrome:// pages are built with HTML, JS and CSS.

edit
After trying with background scripts a little...

我無法使 chrome.tabs.executeScript 工作!我在 background.html 中添加了:

chrome.browserAction.onClicked.addListener(function(tab) {
    alert(this.document.body.innerHTML);
    alert(chrome.tabs.executeScript(null, {
        code : "document.body.style.backgroundColor = 'red';"
    }));
});

我在 manifest.json 中添加了這個以添加(不可見)'瀏覽器操作按鈕':

    ,"browser_action": {
/*      "popup": "background.html",*/
        "name": "Alter page"
    }

onClicked 事件會觸發兩個警報(首先是 background.html 的正文,第二個是 undefined )。但是代碼(帶有 document.body.style.backgroundColor ='red'; 的字符串)不會執行!當然,沒有像這樣的擴展調試=)

有人提示嗎?我試圖抓住標簽的 window.document不是 background.htmlwindow.document </碼>!)。註入的腳本(這是 chrome.tabs.executeScript 應該做的)應該這樣做。

PS
I'm stealing from make_page_red/manifest and make_page_red/background.html
The 'extension' I have so far: http://hotblocks.nl/js/downloads.rar

EDIT
I found out what I want to achieve is possible with just CSS. I don't need to inject javascript. Does that make it easier? Does that make it possible? =)

最佳答案

根據此文檔chrome:// 網址是一個無效的計劃,所以他們將不匹配:

匹配模式本質上是一個以允許的方案開頭的URL( httphttpsfileftp ),它可以包含' * '字符。

我會考慮使用覆蓋頁面


根據要求,這是我的擴展,至少可以在加載 chrome:// downloads 時加載,盡管如我所說,即使你知道這是你的頁面,我也認為你不能修改頁面正在觀看。

的manifest.json </強>

{
    "name": "Test",
    "version": "0.0.1",
    "background_page": "background.html",
    "permissions": [
        "tabs"
    ]
}

background.html </強>

<script>
    chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab)
    {
        if (tab.status == "complete")
        {
            alert(tab.url);
           //should alert 'chrome://downloads' on that page. You can 
           //check for this url here and then do whatever you want
        }
    });
</script>

轉載註明原文: 我可以為Chrome頁面(下載,擴展程序等)制作Google Chrome擴展程序嗎?