Chrome插件(二)—Hello World!

本小节将指导你从头到尾创建一个基本的Chrome插件,你可以认为是chrome插件开发的"hello world"!

以下详细描述了各个步骤:

第一步:设置开发环境

确保你拥有以下工具:

  • 文本编辑器:如Visual Studio Code, Sublime Text等,用于编辑代码。
  • Chrome浏览器:因为你将会在Chrome中测试和调试你的插件。

第二步:创建项目文件夹和文件

  1. 创建插件目录:在你的计算机上创建一个新的文件夹,用于存放你的插件文件。例如,名为0_HelloWorld。
  2. 创建必要的文件:在这个目录中创建以下文件:
    • manifest.json:插件的配置文件。
    • content.js:(如果需要)插件的内容脚本文件。
    • popup.html:(如果需要)点击插件图标时显示的弹出页面。
    • icon.png:插件的图标文件。
css 复制代码
0_HelloWorld/
├── manifest.json
├── popup.html
├── popup.js
└── icon.png

第三步:填写manifest.json文件

这个文件告诉Chrome关于你的插件的信息,包含权限、脚本及其他重要设置。

json 复制代码
{
  "manifest_version": 2,
  "name": "显示当前时间",
  "version": "1.0",
  "description": "点击揽件图标显示当前时间",
  "icons": {
    "48": "icon.png"
  },
  "browser_action": {
    "default_icon": "icon.png",
    "default_popup": "popup.html"
  }
}

第四步:编写弹出页面popup.html

编辑popup.html来设定点击插件图标时看到的弹出页面,该页面将显示时间。

xml 复制代码
<!-- popup.html -->
<!DOCTYPE html>
<html>
<head>
    <title>当前时间</title>
</head>
<body>
    <h1 id="time">加载中...</h1>
    <script src="popup.js"></script>
</body>
</html>

第五步:编写弹出页面的JavaScript逻辑popup.js

编写JavaScript代码以将当前时间更新到弹出的窗口中。

javascript 复制代码
// popup.js
// 当弹出页面的DOM加载完成时执行
document.addEventListener('DOMContentLoaded', function() {
    displayTime();
});

// 显示当前的时间
function displayTime() {
    var now = new Date();
    var timeString = now.getHours() + ':' + now.getMinutes() + ':' + now.getSeconds();
    document.getElementById('time').textContent = timeString;
}

第六步:加载你的插件

  • 打开Chrome浏览器。
  • 导航到chrome://extensions/。
  • 开启右上角的开发者模式。
  • 点击"加载已解压的扩展程序",选择0_HelloWorld文件夹。

第七步:测试插件

现在你可以点击浏览器工具栏中的揽件图标,应该能看到一个显示当前时间的小窗口弹出。

第八步:调试

如果弹出窗口没有正确显示时间,你需要检查popup.js中的代码是否正确,以及popup.html是否正确连接到JavaScript文件。

小结

这是一个简单的Chrome插件创建流程,当然实际开发过程中可能包含更多复杂的逻辑和功能。本教程为你提供了一个起点,你可以根据你的需求扩展和丰富揽件的功能。

相关推荐
丷丩几秒前
工程级MVT地图瓦片服务器Web前端架构设计文档
前端·vue·gis·pinia·geoai-up
小鹿软件办公几秒前
Google 在 Chrome 和搜索中加入 SynthID AI 图像检测功能
前端·人工智能·chrome
海兰2 分钟前
【实用程序】图片处理服务,前端应用 (Vue 3 + Pinia + Vite)后端服务 (Node.js + Express + Sharp)
前端·javascript·vue.js·node.js·pinia
是谁眉眼4 分钟前
css讲解
前端
IT_陈寒5 分钟前
Vite热更新失效?我在这坑里卡了一下午
前端·人工智能·后端
代码搬运媛11 分钟前
双Token刷新机制详解
前端
AI人工智能+电脑小能手12 分钟前
【大白话说Java面试题 第67题】【JVM篇】第27题:生产环境服务器变慢,诊断思路和性能评估谈谈?
java·服务器·jvm·面试
一天 24h22 分钟前
从单体到分布式:JWT 如何彻底改变 Web 认证系统
前端·分布式
持梦远方22 分钟前
Nginx 静态资源挂载与前端部署实战笔记
linux·前端·笔记·nginx
木斯佳23 分钟前
前端八股文面经大全:腾讯云智前端一面(2026-05-13)·面经深度解析
前端·状态模式