後臺網頁
用戶界面
內容腳本
Manifest.json
{
// 必選
"manifest_version": 2,
"name": "擴展程序名字",
"version": "版本字符串",
// 推薦
"default_locale": "en", //國際化 配合文件中的_locales實現多語言
"description": "純文本描述", //擴展程序介紹
"icons": {
"16": "icon.png", //用於擴展程序頁面的收藏夾圖標
"32": "icon.png", //Windows需要32像素的圖標,沒有則將48像素的圖標縮小
"48": "icon.png", //用於擴展程序管理頁面(chrome://extensions
"128": "icon.png" //用與安裝過程中以及 Chrome 網上應用店
},
/* 使用瀏覽器按鈕可以在 Google Chrome 瀏覽器主窗口地址欄右側的工具欄中添加圖標。
* 除了圖標,瀏覽器按鈕還可以有工具提示(default_title)、
* 徽章(圖標添加文字,不可在manifest配置)和彈出內容(default_popup)。
*/
// 選擇某一個(或者無)browser_action一直展示,page_action某些頁面展示(其餘頁面置灰)
"browser_action": {
"default_icon": { // 可選
"19": "images/icon19.png", // 可選
"38": "images/icon38.png" // 可選
},
"default_title": "message", // 可選,在工具欄hover時提示
"default_popup": "popup.html" // 可選,點擊按鈕彈出框
},
"page_action": {}, //選項同browser_action
// 可選
"author": "夢殤918",
"background": {
"scripts":[]
// 推薦 開啓事件頁面(只在需要時加載,當事件頁面不活動時就會卸載)
"persistent": false
},
// 內容腳本,注入到打開的頁面中
"content_scripts": [{
"matches":[], //指定內容腳本要插入到哪些頁面中去
"exclude_matches":[],
"css":[],
"js":[],
"run_at":'', // document_start、document_end、document_idle(默認)
"include_globs":[], //在應用 matches 之後同時匹配這一範圍的 URL
"exclude_globs":[]
}],
// 替代頁面 (一個擴展程序只能替換一個頁面)
"chrome_url_overrides": {
"newtab":'xxx.html' //pageToOverride可替換爲bookmarks(書籤管理器)、history(歷史記錄)、newtab(“打開新的標籤頁”頁面)
},
"content_security_policy": "策略字符串", //https://crxdoc-zh.appspot.com/extensions/contentSecurityPolicy
"homepage_url": "http://path/to/homepage", //插件主頁
/* 選擇的準則是,如果您的擴展程序或者應用需要在隱身模式下加載標籤頁,請使用 split 隱身行爲。
* 如果您的擴展程序或應用需要登錄遠程服務器或者在本地保留設置,請使用 spanning 隱身行爲。 */
"incognito": "spanning 或 split",
"options_page": "aFile.html", //讓用戶自定義您的擴展程序的行爲,您可能會提供一個選項頁面(配合storage API )
"storage": {
"managed_schema": "schema.json"
}
}
問題
-
Chrome擴展程序不允許使用
unsafe-eval
manifest.json
"content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'"