位置: IT常识 - 正文

快速制作一个chrome插件(快速制作一个演示文稿可用什么)

编辑:rootadmin
快速制作一个chrome插件 说在前面

推荐整理分享快速制作一个chrome插件(快速制作一个演示文稿可用什么),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:快速制作一个网页,快速制作一个演示文稿可用,快速制作一个小目标,快速制作一个演示文稿可用(),快速制作一个演示文稿可用(),快速制作一个抽奖ppt页面,快速制作一个演示文稿可用,快速制作一个演示文稿可用什么,内容如对您有帮助,希望把文章链接给更多的朋友!

在我日常开发以及娱乐生活中,浏览器是我使用频率较高的一个应用,当我大学拥有第一部电脑开始,之后不论电脑换成什么,以及使用的是什么系统,我的首选浏览器都是Chrome,不仅仅是因为其速度快,更多是它丰富的扩展在吸引我,那么大家有没有想过如何自己来开发一个Chrome浏览器插件呢?是不是有的同学会觉得Chrome浏览器插件的制作难度会很大呢?今天就让我来带你们看看一个简单的Chrome浏览器插件的编写过程,并给大家制作一个简单的插件模板,大家可以通过模板来进行快速开发。

一、项目结构

一个完整的插件目录结构如下:

(一)html + js1、manifest.json

简单配置,具体配置说明已在配置项后标出。

{ "manifest_version": 2, //版本号,由google指定为2 "name": "helloWorld", //插件名称 "version": "1.0", //插件版本 "description": "hello world 插件", //插件描述 "icons": { //插件图标 "128": "img/logo.jpg", "48": "img/logo.jpg", "16": "img/logo.jpg" }, "browser_action": { "default_icon": "img/logo.jpg", //插件图标 "default_popup": "default_popup" //点击图标后弹出的html互动文件 }, "content_scripts": [ { "matches": ["<all_urls>"], //匹配url "js": ["bg.js"], //执行脚本 "run_at": "document_start" //脚本运行时机 } ], "permissions": ["tabs", "activeTab"] //权限申请}

使用"content_scripts"你可以修改你当前访问的页面的dom,主要是靠js实现的,里面的"matches"是一个数组,里面装的是一些匹配的规则,意思就是当你的页面的地址满足数组里面的值的时候就会操作js文件,all_urls表示所有网页都会加载脚本。而"js"里面的是具体的操作,具体操作就是要自己写了。

2、popup.html

插件弹窗页,可以直接编写一个html页面,在manifest.json中的default_popup项进行配置即可。

<!DOCTYPE html><html lang=""> <head> <title>helloWorld</title> <meta charset="utf-8" /> </head> <body style="width: 200px; height: 200px"> <h1 id="message">你好</h1> <input id="input1" type="text" /> </body> <script src="js/popup.js"></script></html>3、popup.js

插件弹窗页的脚本js代码,在popup.html页面中引入即可。

(function () { const input1 = document.getElementById("input1"); const message = document.getElementById("message"); input1.addEventListener("keyup", (e) => { message.innerHTML = "你好" + e.target.value; chrome.tabs.query({ active: true, currentWindow: true }, function (tab) { chrome.tabs.sendMessage( tab[0].id, { action: "hello", data: message.innerHTML, }, function (response) { console.loig("收到回复:", response.state); } ); }); });})();4、bg.js

运行在浏览器打开tab窗体的脚本,需要在manifest.json中的content_scripts中进行配置。

chrome.runtime.onMessage.addListener(function (request, sender, sendResponse) { const { action, data } = request; console.log("%c Line:4 🥔 action,data", "color:#b03734", action, data); sendResponse({ state: "已接收到数据" + data });});(二)vue + js1、使用vue来编写插件弹窗页

使用vue来编写插件弹窗页面,我们可以将项目结构简化成这样,只需要修改manifest.json中的default_popup为vue项目打出的dist包即可。

{ "manifest_version": 2, //版本号,由google指定为2 "name": "helloWorld", //插件名称 "version": "1.0", //插件版本 "description": "hello world 插件", //插件描述 "icons": { //插件图标 "128": "img/logo.jpg", "48": "img/logo.jpg", "16": "img/logo.jpg" }, "browser_action": { "default_icon": "img/logo.jpg", //插件图标 "default_popup": "demo/dist/index.html" //点击图标后弹出的html互动文件 }, "content_scripts": [ { "matches": ["<all_urls>"], //匹配url "js": ["bg.js"], //执行脚本 "run_at": "document_start" //脚本运行时机 } ], "permissions": ["tabs", "activeTab"] //权限申请}

并将popup.js文件移到vue项目中,在index.html中引入即可。

快速制作一个chrome插件(快速制作一个演示文稿可用什么)

二、浏览器导入插件(一)进入chrome扩展程序管理页

(二)加载扩展程序

(三)页面使用插件

三、模板源码(一)gitee源码下载

模板代码已上传到gitee,具体地址如下:

https://gitee.com/zheng_yongtao/chrome-plug-in.git

(二)依赖下载

拉取模板代码之后需要先下载vue模板的依赖(npm install)。

(三)vue打包

安装好vue模板的依赖之后,就可以对vue项目进行打包(npm run build)。

四、npm下载

插件模板我也已经上传了一份到了npm上,可以直接通过npm将模板下载下来:

npm i @jyeontu/chrome-plug-template

说在后面

🎉这里是JYeontu,现在是一名前端工程师,有空会刷刷算法题,平时喜欢打羽毛球🏸 ,平时也喜欢写些东西,既为自己记录📋,也希望可以对大家有那么一丢丢的帮助,写的不好望多多谅解🙇,写错的地方望指出,定会认真改进😊,在此谢谢大家的支持,我们下文再见🙌。

本文链接地址:https://www.jiuchutong.com/zhishi/290682.html 转载请保留说明!

上一篇:Rietvlei自然保护区内的布氏斑马母子,南非 (© Richard Du Toit/Minden Pictures)(自然保护绘画)

下一篇:解决RTX 3090 with CUDA capability sm_86 is not compatible with the current PyTorch installation.(解决脱发的8个方法)

  • 偶然所得税起征点800是每月吗
  • 财务负责人如何解绑
  • 房产税和车船税计入应交税费吗
  • 购入固定资产入账
  • 增加税收的方法有哪些
  • 小规模纳税人印花税怎样计算
  • 金融负债
  • 错账更正分录
  • 下列应税项目中,不按次计算征收个人所得税的是
  • 顾客退货补差价怎么做账?
  • 营业外支出计入
  • 成本暂估跨年度要怎么处理?
  • 出口退税的办理影响出口吗
  • 增值税普通发票和普通发票的区别怎么交税
  • 虚开增值税发票具体操作是怎样的?
  • 企业所得税报表模板
  • 非独立核算的门市部增值税
  • 预提怎么写会计分录
  • 车辆购置税能抵扣税款吗
  • 开的技术服务费可以做研发支出吗?
  • 企业怎么才能开100万发票
  • 购买工装的进项能抵扣吗
  • 往年个税申报数据查询
  • 建筑中小企业
  • 收到往来款的账务处理
  • 应付职工薪酬的贷方表示什么
  • 企业医保分几种
  • 抵扣联必须当月认证吗
  • 主营业务成本和库存商品区别
  • 代发工资开的发票可以抵扣吗?
  • win10如何设置快捷键截图
  • 成本核算的一般步骤
  • linux怎么用gcc编译c程序
  • 为什么把收入进行舞弊假定
  • el-upload上传文件大小限制
  • 个人出租住房如何开增值税专用发票
  • 【2023-Pytorch-检测教程】手把手教你使用YOLOV5做电线绝缘子缺陷检测
  • php数组内容替换
  • 最好的ph计
  • vue框架教程视频
  • nodejs 下载
  • typescript tsconfig
  • system error
  • c语言中数组的定义和使用
  • java泛型E和T
  • 母子公司转让不动产 契税
  • phpcms安装
  • 开业前需要支出什么费用
  • 利息应怎么录入收入
  • sqlserver 通用存储过程分页代码(附使用ROW_NUMBER()和不使用ROW_NUMBER()两种情况性能分析)
  • 稳岗补贴操作
  • 固定资产处置的净收入计入
  • 出售子公司股权给其他公司
  • 以前年度损益影响当期损益吗
  • mysql改造
  • 收到税局退款
  • 商场联营扣点缴纳增值税税率
  • 进项税额不得从销项税额中抵扣项目是什么意思
  • 公司购买银行理财产品怎么做账
  • 新建厂房房产证办理流程
  • 广告费和广告发布费什么区别
  • 公司账户收入金额有规定吗
  • 完成认证后开具什么证明
  • 企业租用农村土地
  • ubuntu git not found
  • linux halting
  • win7系统怎么设置桌面便签
  • win7怎么看磁盘
  • 置顶在哪里
  • linux编译链接命令
  • bash脚本语言
  • css网页布局中注释是什么
  • js入门基础教程
  • 如何终止promise
  • unity meshcollider
  • 丰台和朝阳中间是哪里
  • 岗位大练兵业务大比武简报
  • 江苏国税电子网
  • 收购烟叶支付的价外补贴怎么处理
  • 什么是审计的重要特征,也是审计的精髓
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设