Chrome扩展开发系列开篇

这篇具有很好参考价值的文章主要介绍了Chrome扩展开发系列开篇。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

大家好,我是 dom 哥。这是我关于 Chrome 扩展开发的系列文章,感兴趣的可以 点个小星星。

浏览器现状 🌍

研究机构 Statcounter 发布了 2023 年 9 月报告,揭示了有关浏览器的最新统计数据。

浏览器 市场份额 Chromium-based?
Chrome 63.56% Yes
Safari 19.85% No
Edge 5.43% Yes
Firefox 2.94% No
Opera ... Yes

可以看到基于 Chromium 的浏览器占了全球市场的 7 成!

对于前端开发来说,Chrome 更是形影不离的饭碗级软件 😁。既然 Chrome 这么重要,那么把它研究透一定大有裨益。

在我看来,Chrome 值得深入研究的地方早有两块:DevTools 和 Extension。

先说说 DevTools,即开发者工具,是 Chrome 为我们提供的一套功能强大的集开发,调试, 分析诸多功能于一身的内置工具。如下图所示:

Chrome扩展开发系列开篇

像 Elements,Console,Sources, Network,Application 这些都是日常开发调试离不开的功能面板。但是我们开发者对 DevTools 的主要研究内容是怎么用。因为这些强大的功能面板都是 Chrome 内置的,作为开发者使用者,只能用,不能动代码。

然后是 Extension,即 Chrome 扩展,是留给广大开发者自由发挥的天地。

  • 想给一些页面注入 js,css?
  • 想跨浏览器的页签运行一个后台服务?
  • 想自定义新打开的标签页?
  • 想实现什么天马行空的想法?

这些都可以通过 Chrome 扩展实现!Chrome 为扩展程序提供了大量 chrome.* API 用于开放 Chrome 的能力。

大家开发的扩展可以发布到 Chrome 应用商店供海量用户选择,就像苹果的 App Store 一样!

Chrome 应用商店如下图:

Chrome扩展开发系列开篇

甚至,如果天时地利人和,你甚至可以通过 Chrome 扩展赚点零花钱 💰 也不是不可能,不过别抱太大希望哦 😅

Chrome 扩展开发 🛠️

学习一门技术,最好的方式就是去官网,看官方文档,跟着官方文档边看边练,这是不会错的路子。

Chrome Extension 也不例外。Chrome 官方为其扩展开发提供了详尽的文档,奈何,全是英文啊~,看的我四级词汇都不够用了:

Chrome扩展开发系列开篇

不但有文档,每个功能特性都提供了示例代码,简直不要太贴心~

总结,梳理,写系列教程 📚

记得刚接触到 Chrome Extension 时它还是 manifest V2 版本,当时是想做一个 Chrome 扩展,通过拦截网络请求修改其 header 突破跨域限制。时过境迁,如今已是 manifest V3 版本,Chrome 对 webRequest 的细则已做了调整,当初写的代码即将不再支持运行 🥹。

还折腾过一个录制页面操作的扩展,记录下鼠标点击和表单输入等操作,可以重放,模拟这些操作再还原页面状态。后来清理磁盘,居然 TMD 手贱把项目清理掉了,大腿拍青,切记 git push 大于天啊!如今 Chrome 已经有了 Recorder 工具,和我当时的目标类似,只不过我当时的做法是直接用 content_scripts 在页面上重放,而不是在 Puppeteer 里去重放。

期间还为了各种小用途开发过十几个功能不一的扩展程序。现在主要是维护一个辅助日常开发,和业务高耦合的扩展。

但,几年下来,虽写了不少扩展程序,但总感觉零碎,所以我决定把有关 Chrome 扩展开发的东西系统的梳理总结起来,通过沉淀成一份系列教程,建立起知识体系,成为自己的核心竞争力。

目前心中的大纲简单罗列如下,勾上的是已完成的:

后续慢慢完善吧,轮廓已成,细节可以慢慢雕琢。

Chrome 扩展开发似乎是个冷门,不过也可以理解,对前端开发来说,这属于一种有了更好,没有也罢的技术,就算不助我开发,也不影响我开发😂。不管怎么样,我都想坚持下去,其实我现在是奔着写一本小册的标准去的,说不定未来某天我真的会出本小册。毕竟 35 岁危机不是闹着玩儿的,提前搞搞副业总是好的,加油哟~

觉得不错可以 点个小星星 支持一下哦 🌹文章来源地址https://www.toymoban.com/news/detail-760447.html

到了这里,关于Chrome扩展开发系列开篇的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【chrome扩展开发】如何在项目中判断插件是否已安装

    由于安全限制,本文采取间接的方式实现 比如通过cookie、localStorage等进行状态存储 在 background.js 中进行安装、卸载事件监听 Ps: management 权限的监听事件,似乎无法对安装、卸载起到作用,具体原因不清楚,还有待研究。 有兴趣的小伙伴也可以研究研究,官方文档地址:

    2024年02月11日
    浏览(45)
  • 【chrome扩展开发】vue-i18n使用问题及解决方案

    记录chrome扩展开发时调用vue-i18n的一些问题和解决方法 vue : ^3.3.4 vue-i18n : ^9.2.2 vite : ^4.4.8 Uncaught (in promise) EvalError: Refused to evaluate a string as JavaScript because \\\'unsafe-eval\\\' is not an allowed source of script in the following Content Security Policy directive: \\\"script-src \\\'self\\\' \\\'wasm-unsafe-eval\\\' \\\'inline-speculation-

    2024年02月14日
    浏览(41)
  • 1 海康视觉平台VisionMaster 上手系列: 开篇

    先交代一下背景。本人搞机器视觉多年。最熟悉的是halcon,其次是visionpro,再是opencv。 今年(2022年)才真正开始使用VisionMaster。(以下用VM简称 VisionMaster) 首先说一下主观感受(过程)。 最开始接触VM的时候。是海康来原公司做产品推广培训。那次感觉VM四不像。流程编辑

    2024年02月07日
    浏览(40)
  • Chrome扩展之通信

    js类型 介绍 popup 单击插件图标后的弹窗中的js,由于单击图标打开popup,焦点离开又立即关闭,生命周期一般很短。 content-script 与页面共享DOM,但是不共享JS,可访问部分chrome扩展API。 background 权限最高,几乎可调用所有Chrome扩展API(除了devTools),且可以无限制跨域。生命周

    2024年01月23日
    浏览(33)
  • 从零实现的Chrome扩展

    Chrome 扩展是一种可以在 Chrome 浏览器中添加新功能和修改浏览器行为的软件程序,例如我们常用的 TamperMonkey 、 Proxy SwitchyOmega 、 AdGuard 等等,这些拓展都是可以通过 WebExtensions API 来修改、增强浏览器的能力,用来提供一些浏览器本体没有的功能,从而实现一些有趣的事情。

    2024年02月17日
    浏览(42)
  • Chrome扩展的核心:manifest 文件(下)

    大家好,我是 dom 哥。这是我关于 Chrome 扩展开发的系列文章,感兴趣的可以 点个小星星。 在上篇和中篇中已经完成了对 manifest 文件中以下字段的解释: \\\"manifest_version\\\" \\\"name\\\" \\\"version\\\" \\\"description\\\" \\\"icons\\\" \\\"content_scripts\\\" \\\"background\\\" \\\"permissions\\\" 本篇接着说剩下的 manifest 可选字段。 定义

    2024年02月04日
    浏览(46)
  • Chrome扩展的核心:manifest 文件(中)

    大家好,我是 dom 哥。我正在写关于 Chrome 扩展开发的系列文章,感兴趣的可以 点个小星星 。 在上一篇中已经完成了 Chrome 扩展的雏形,本篇接着介绍 manifest 中的可选字段,完善扩展的细节。 向 web 页面注入 JavaScript 和 CSS 。可以说这是 Chrome 扩展的灵魂。当指定 content_scri

    2024年02月04日
    浏览(44)
  • Chrome扩展的核心:manifest 文件(上)

    大家好,我是dom哥。我正在写关于 Chrome 扩展开发的系列文章,感兴趣的可以点个小星星。 Chrome 在全球浏览器市场份额独占 6 成,无论是对普通用户还是开发者,都是电脑里的必备利器。Chrome 无论是在性能还是 UI 交互方面都非常出色,而 Chrome 扩展则为开发者提供了接口,

    2024年02月05日
    浏览(41)
  • chrome扩展控制popup页面动态切换

    下面在mv2版本的API下完成 实际上通过控制页面元素实现popup页面切换,是一种伪切换,从视觉上达到了切换效果,实际上还是一个popup.html popup.html示例 判断展示哪一个div的内容 不需要在manifest里单独配置browser_action,通过所在的页面决定使用哪一个popup.html页面 准备两个popu

    2024年02月15日
    浏览(62)
  • chrome 扩展 popup 弹窗的使用

    popup介绍 popup 是点击 browser_action 或者 page_action 图标时打开的一个小窗口网页,焦点离开网页就立即关闭,一般用来做一些临时性的交互。 popup配置 V3版本中(V2版本是在 browser_action 中 ),可以通过配置文件( manifest.json )中 action 里面的 default_popup 字段来指定 popup 页面,也

    2024年02月05日
    浏览(39)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包