首先說明,chrome的擴展並不它的插件,網上不少說寫插件,其實都是說的擴展。寫擴展並不複雜,只要根據chrome提供的一系列的API進行就能夠實現不少的功能。只是對API的學習是有代價的,加上國內訪問chrome官網文檔並不順利。雖然360提供了一個翻譯文檔,並且有很多例子,但它的內容仍是太少,有些問題它仍然沒有涉及。因此,若是是作一個簡單的應用沒有什麼問題,但實際的項目開發每每得不到有用的介紹和解釋。ajax
這個系列的文章將從解決一些實際的問題入手,涉及的內容大體有如下幾個:chrome
博主也是在學習中,所說的也是開發過程當中的一些總結,並不必定正確,若是有錯,還請包涵。json
寫擴展只有一個文件是固定的,其它的並無什麼固定的要求,如固定的格式,固定的文件夾等。這個固定的文件就是它的配置文件,一個JSON格式的文件:manifest.json,基本內容以下:瀏覽器
manifest.jsoncookie
{
"manifest_version": 2, "name": "My Extension", "description": "Extension description", "version": "1.0" }
這是一個最簡單的文件,有2個須要注意的問題:學習
這幾項不用介紹,應該都知道它們是幹嗎的,它們會出如今擴展界面裏,別的就沒什麼用了。一個真正的擴展固然不可能只有這些。它能涉及到的,博主簡單概括爲兩類:spa
那麼,若是你的擴展須要涉及什麼,就得把它添加到配置JSON裏,也就是manifest.json文件中,如須要用到Tab:插件
{
"manifest_version": 2, "name": "My Extension", "description": "Extension description", "version": "1.0", "permissions": [ "tabs" ] }
permissions即爲容許的,它會告訴chrome,這個插件是容許操做Tab的,否則chrome就容許讓你使用它Tab相關的API。因此,若是還有使用書籤,或是別的什麼東西時,均可以寫在這裏面。如,咱們要使用代理相關的API:翻譯
{
"manifest_version": 2, "name": "My Extension", "description": "Extension description", "version": "1.0", "permissions": [ "tabs", "proxy" ] }
proxy即表明可使用代理相關的API,諸如比類還有cookie,history等,具體相關能夠查閱官方文檔代理
chrome擴展對目錄並無嚴格的要求,因此,除了manifest.json這個文件必須,其它的都是按需增長。目錄結構能夠按你的習慣創建的命名,都沒有問題。