实现一个谷歌插件js
创建谷歌插件的基本结构
创建一个谷歌插件需要一个manifest.json文件作为入口点,定义插件的基本信息、权限和资源。以下是一个基础示例:
// manifest.json
{
"manifest_version": 3,
"name": "示例插件",
"version": "1.0",
"description": "一个简单的谷歌插件示例",
"permissions": ["activeTab", "storage"],
"action": {
"default_popup": "popup.html",
"default_icon": "icon.png"
},
"background": {
"service_worker": "background.js"
}
}
添加前端交互界面
创建一个弹出页面popup.html,用户点击插件图标时会显示此页面。通常包含简单的HTML和CSS:
<!-- popup.html -->
<!DOCTYPE html>
<html>
<head>
<style>
body { width: 200px; padding: 10px; }
button { padding: 5px; margin-top: 10px; }
</style>
</head>
<body>
<h3>插件示例</h3>
<button id="changeColor">改变页面颜色</button>
<script src="popup.js"></script>
</body>
</html>
实现弹出页面的逻辑
通过popup.js与当前页面交互。例如修改页面背景色:
// popup.js
document.getElementById('changeColor').addEventListener('click', () => {
chrome.tabs.query({ active: true, currentWindow: true }, (tabs) => {
chrome.scripting.executeScript({
target: { tabId: tabs[0].id },
func: () => {
document.body.style.backgroundColor = '#f0f0f0';
}
});
});
});
后台脚本处理长期任务
background.js用于处理不需要界面的事件监听或长期任务:
// background.js
chrome.runtime.onInstalled.addListener(() => {
console.log('插件已安装');
});
内容脚本操作页面DOM
通过content.js直接修改或读取页面内容:
// content.js
alert('内容脚本已加载!');
并在manifest.json中注册内容脚本:
"content_scripts": [
{
"matches": ["<all_urls>"],
"js": ["content.js"]
}
]
调试与加载插件
- 在Chrome地址栏输入
chrome://extensions进入扩展程序管理页面。 - 开启右上角的“开发者模式”。
- 点击“加载已解压的扩展程序”,选择插件文件夹。
发布插件到商店
- 注册Chrome开发者账号并支付一次性费用。
- 在Chrome开发者中心打包插件为
.zip文件。 - 上传至开发者控制台并填写商店信息。







