如何开发了一个chrome浏览器插件?
视频教程
1.课程目标
了解manifest.json的基本结构,熟悉manifest.json中重要字段的含义及配置方法
2.课程内容
2.1manifest.json介绍
每个扩展都有一个名为manifest.json的 JSON 格式清单文件 。 清单文件是扩展的蓝图。 清单文件包括如下信息:
- 扩展的版本号。
- 扩展的标题。
- 扩展运行所需的权限。
{
// 必须的
"manifest_version": 3,
"name": "My V3 Extension",
"version": "versionString",
// 推荐的
//***点击插件图标时的相应处理信息
"action": {...},
"default_locale": "en",
"description": "A plain-text description",
"icons": {...},
// 可选
"action": ...,
"author": ...,
"automation": ...,
//***后台处理代码,主要的逻辑处理服务
"background": {
// If `background` is included, `service_ worker` is required
"service_worker": ...
},
"chrome_settings_overrides": {...},
"chrome_url_overrides": {...},
"commands": {...},
"content_capabilities": ...,
//***向页面中注入脚本
"content_scripts": [{...}],
"content_security_policy": "policyString",
"converted_from_user_script": ...,
"current_locale": ...,
"declarative_net_request": ...,
"devtools_page": "devtools.html",
"differential_fingerprint": ...,
"event_rules": [{...}],
"externally_connectable": {
"matches": ["*://*.contoso.com/*"]
},
"file_browser_handlers": [...],
"file_system_provider_capabilities": {
"configurable": true,
"multiple_mounts": true,
"source": "network"
},
"homepage_url": "http://path/to/homepage",
//***允许操作的URL
"host_permissions": [...],
"import": [{"id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"}],
"incognito": "spanning, split, or not_allowed",
"input_components": ...,
"key": "publicKey",
"minimum_chrome_version": "versionString",
"nacl_modules": [...],
"natively_connectable": ...,
"oauth2": ...,
"offline_enabled": true,
"omnibox": {
"keyword": "aString"
},
"optional_permissions": ["tabs"],
"options_page": "options.html",
"options_ui": {
"chrome_style": true,
"page": "options.html"
},
//***权限声明
"permissions": ["tabs"],
"platforms": ...,
"replacement_web_app": ...,
"requirements": {...},
"sandbox": [...],
"short_name": "Short Name",
"storage": {
"managed_schema": "schema.json"
},
"system_indicator": ...,
"tts_engine": {...},
"update_url": "http://path/to/updateInfo.xml",
"version_name": "aString",
//***可访问的资源
"web_accessible_resources": [...]
}
2.2案例中的mainfest.json
2.2.1插件的基本信息
{
//插件名称
"name": "picshow",
//插件版本
"version": "0.0.0.1",
//manifest版本,从今年开始弃用2版本
"manifest_version": 3,
//插件描述
"description": "在页面顶部显示特定图片"
}
2.2.2图标信息
图标用于用户选择启动扩展的按钮的背景图像。
对于图标:
- 建议使用PNG格式,但也可以使用 BMP、 GIFICO 或 JPEG 格式。
- 建议使用 128 x 128 像素的图像,如有必要,这些图像由浏览器调整大小。
{
"name": "picshow",
"version": "0.0.0.1",
"manifest_version": 3,
"description": "在页面顶部显示特定图片",
"icons": {
"16": "icons/logo16x16.png",
"32": "icons/logo32x32.png",
"48": "icons/logo48x48.png",
"128": "icons/logo128x128.png"
}
}
2.2.3点击图标弹出页面
当用户选择图标以启动扩展时, popup/popup.html 将显示为模式对话框。
{
"name": "picshow",
"version": "0.0.0.1",
"manifest_version": 3,
"description": "在页面顶部显示特定图片",
"icons": {
"16": "icons/logo16x16.png",
"32": "icons/logo32x32.png",
"48": "icons/logo48x48.png",
"128": "icons/logo128x128.png"
},
"action": {
"default_popup": "popup/popup.html"
},
"content_scripts": [
{
"matches": [
""
],
"js": ["lib/jquery.min.js","content-scripts/content.js"]
}
],
"web_accessible_resources": [
{
"resources": ["images/*.jpeg"],
"matches": [""]
}
]
}
3.扩展阅读
edge(V3):
firefox(V2):
视频教程
为什么要使用插件呢?
Chrome本身的设计比较简洁,对于初始的Chrome浏览器,是非常干净的,除了基本的浏览器所具有的浏览功能,基本不含有其他的乱七八糟的附加功能,这也是很多人喜欢使用Chrome的原因,如果追求极致的浏览体验,纯净的Chrome是一个非常不错的选择。
谷歌浏览器安装初始优化
主页和默认搜索引擎更改
因为chrome是谷歌的产品,而chrome自带的是谷歌搜索在中国是不能使用的,所以可以把主页设置成自己喜欢的导航网站或者我们常用搜索引擎。
chrome浏览器插件安装使用完全指南
谷歌浏览器是市场上占有率最大的浏览器,尽管在PC操作系统上是微软windows的天下,但是微软自带的IE浏览器在使用感受上让人感觉差强人意。有人说IE存在的目的
浏览器是开发人员最强大的工具。99% 的人不会 100% 地利用他们的浏览器。这里有 30 个浏览器扩展,如果你能合理充分利用将大大提升你的开发效率。
1. WhatFont
"WhatFont",是一款帮助用户快速识别网页中字体信息的工具。
当你在浏览网页时,如果看到了一款你喜欢的字体,但不知道具体是什么字体,那么这时候使用 WhatFont 就非常方便了。安装好插件后,在浏览网页时,只需将鼠标移动到感兴趣的字体上,WhatFont 就会立即显示出该字体的详细信息,包括字体名称、大小、颜色等等。
此外,WhatFont 还可以识别字体的变形和阴影效果,并且支持在 Google Fonts 和 Typekit 上搜索字体,方便用户在设计网页时挑选字体。
总的来说,WhatFont 是一款非常实用的工具,可以帮助用户识别网页中的字体信息,方便用户在自己的设计工作中使用。
https://chrome.google.com/webstore/detail/whatfont/jabopobgcpjmedljpbcaablpmlmfcogm
2.WhatRuns
这个谷歌插件名为"WhatRuns",它是一款用于帮助用户快速了解一个网站使用了哪些技术、框架和库的工具。使用该插件,用户只需访问一个网站,然后点击"WhatRuns"插件的图标,即可获得该网站使用的技术列表,这包括:
服务器信息:Web服务器、主机、IP地址、DNS记录等
编程语言:该网站使用的编程语言(例如,Java、PHP、Python、Ruby等)
30个极致实用的谷歌浏览器插件,让你开发事半功倍