Manifest3 之后 ContextMenus也进行了升级。
Manifest3配置如下:

  "background": {"service_worker": "background.ts"},"permissions": ["contextMenus",]

background中的scripts改成了service_worker。
Manifest3的文档地址https://developer.chrome.com/docs/extensions/mv3/intro/
ContextMenus调用只能在background配置的service_worker里边,页面脚本只能使用部分chrome extension方法。
contextMenus的文档地址https://developer.chrome.com/docs/extensions/reference/contextMenus/
写法如下:

chrome.contextMenus.create({'id': 'download all image','title': '下载页面中图片','contexts':['page'],
})chrome.contextMenus.create({'id': 'download same image','title': '下载同类图片','contexts':['image'],
})// 事件回调都放到了统一一个地方监听。
chrome.contextMenus.onClicked.addListener((info, tab) => {console.log(info ,tab)if (info.menuItemId == 'download all image') {console.log('download all image')} else if (info.menuItemId == 'download same image') {console.log('download same image')}
})

这样就能在页面里边显示出右键的菜单了。

Chrome Extension ContextMenus 创建 适配Manifest3相关推荐

  1. Chrome Extension插件开发概述

    摘要:本文主要描述关于chrome plugin开发的相关开发知识,着重讲述下popup/background/content-script三者之间的消息互通. 一.Chrome Extension还 ...

  2. Develop chrome extension study

    I spent a day in reading the chrome extension development. Its main point is aboout manifest.json an ...

  3. Chrome Extension 介绍

    Chrome Extension 介绍 1. Chrome 扩展程序 2. Chrome 扩展的工作方式 3. 扩展程序的组织结构 4. 扩展的安装方式 5. 初步感受 -- 第一个扩展 5.1 创建 ...

  4. SAP成都研究院安德鲁:自己动手开发一个Chrome Extension

    各位好,我叫何金鑫(He Andrew), 团队同事亲切地称呼在下为安德鲁.如果你在附近找到wifi热点名为 「安德鲁森面包房5g」,可能是我就在附近,我们可以去喝杯咖啡,聊聊最近有趣的东西. 鄙人现 ...

  5. chrome extension develope(1)

    每一个扩展.可安装的WebApp.皮肤,都有一个JSON格式的manifest文件,叫manifest.json,里面提供了重要的信息 . 字段说明 下面的JSON示例了manifest支持的字段,每 ...

  6. Chrome Extension 检查视图(无效)处理方法

    最近闲来无事,简单看了下Chrome扩展的开发,并且开发一个小小的翻译插件(TranslateBao)作为练手,开发细节不详述了,如果有新学习chrome extension开发的新人,可以参考源码, ...

  7. 解决chrome extension无法下载的问题

    由于GFW把谷歌应用商店给屏蔽了,下载chrome扩展变得很困难. 我使用的是版本30.0.1599.101 m. 那么你需要做的第一个处理是,修改host文件,保证chrome应用商店可以登录.如下 ...

  8. 如何在Chrome浏览器中创建账户?

    chrome浏览器是一款非常特殊的浏览器,不仅有非常多的用户喜欢使用这款软件,有很多开发者也非常喜欢使用这款软件,在使用浏览器的时候创建账号是一种最简单的方法,其实操作起来非常的简单.方便,但不是所有 ...

  9. Chrome Extension Dark Theme

    Chrome Extension & Dark Theme https://chrome.google.com/webstore/detail/eimadpbcbfnmbkopoojfekhn ...

最新文章

  1. IDEA IntelliJ 如何给web项目配置tomcat
  2. linux设置定时备份任务,Linux下Oracle设置定时任务备份数据库的教程
  3. 第7.26节 Python中的@property装饰器定义属性访问方法getter、setter、deleter 详解
  4. 为什么我们的web前端变的越来越复杂
  5. CRM脱机下使用说明_海天
  6. HDU 1402——A * B Problem Plus
  7. 如何设置鼠标滚轮html,win7如何设置鼠标滚轮
  8. eclipse下生成Java类图和时序图,生成UML图
  9. Python爬虫(一)抓取指定的页面
  10. Web应用开发基本技术及思想
  11. 第一届前端早早聊笔记--wsdchong
  12. 《21天学通Java(第6版)》—— 1.2 面向对象编程
  13. 计算机蓝屏原因原理,蓝屏炸弹
  14. 会计分录、科目、账户
  15. 华为路由器AR6300 取消密码重置提醒和密码长期有效
  16. 蔡盈芳:企业数字档案馆整体架构及其层次模型研究
  17. 回路电感详细介绍(环路电感)
  18. 安卓 usb音量调节_各大厂商不重视的音量调节键,被一个安卓APP玩出花了
  19. 莱布尼兹是微积分奠基人吗?
  20. discuz!内置代码 (收藏)

热门文章

  1. 关于仿写00片刻企业站
  2. 文件监控(二) 代码
  3. primeNG__datatable
  4. pnpm安装使用教程以及pnpm node版本管理以及EPERM operation not permitted symlink问题解决
  5. python错误:UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb5 in position 0: invalid start byte
  6. 解决python UnicodeEncodeError: ‘gbk‘ codec can‘t encode character ‘\xb5‘ in position 255: illegal mult
  7. Java并发——Executor框架详解(Executor框架结构与框架成员)
  8. java-net-php-python-java作业批改系统的设计PPT计算机毕业设计程序
  9. Zabbix 分布式监控
  10. 程序员的奋斗史(十二)——谈信念