一塊兒來作chrome擴展《基礎介紹》

首先說明,chrome的擴展並不它的插件,網上不少說寫插件,其實都是說的擴展。寫擴展並不複雜,只要根據chrome提供的一系列的API進行就能夠實現不少的功能。只是對API的學習是有代價的,加上國內訪問chrome官網文檔並不順利。雖然360提供了一個翻譯文檔,並且有很多例子,但它的內容仍是太少,有些問題它仍然沒有涉及。因此,若是是作一個簡單的應用沒有什麼問題,但實際的項目開發每每得不到有用的介紹和解釋。ajax

這個系列的文章將從解決一些實際的問題入手,涉及的內容大體有如下幾個:chrome

  • 基礎配置
  • content_script和background_script
  • cookie的使用
  • 本地存儲
  • ajax請求遠程數據

博主也是在學習中,所說的也是開發過程當中的一些總結,並不必定正確,若是有錯,還請包涵。json

寫擴展只有一個文件是固定的,其它的並無什麼固定的要求,如固定的格式,固定的文件夾等。這個固定的文件就是它的配置文件,一個JSON格式的文件:manifest.json,基本內容以下:瀏覽器

manifest.jsoncookie

{
    "manifest_version": 2, "name": "My Extension", "description": "Extension description", "version": "1.0" }

這是一個最簡單的文件,有2個須要注意的問題:學習

  • 目前的規定,manifest_version必須寫爲2,因此其它的數字就不要寫了,特別是1
  • JSON中,最後一項,是不能有,號的,否則它會啓用失敗的。

這幾項不用介紹,應該都知道它們是幹嗎的,它們會出如今擴展界面裏,別的就沒什麼用了。一個真正的擴展固然不可能只有這些。它能涉及到的,博主簡單概括爲兩類:spa

  • chrome瀏覽器的元素,如Tab,書籤,歷史記錄等。
  • 頁面內容

那麼,若是你的擴展須要涉及什麼,就得把它添加到配置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這個文件必須,其它的都是按需增長。目錄結構能夠按你的習慣創建的命名,都沒有問題。

相關文章
相關標籤/搜索