google-chrome-extension - 适用于 Chrome、Firefox、Safari 标准参考和工具的 Web 扩展(浏览器插件)(2021 年)
问题描述
据我所知,我们今天使用的浏览器插件的正确名称实际上称为“Web 扩展”。在每个浏览器都有自己的 API 之前,Chrome 和 Firefox 都同意了,现在是 Safari(2021 年 macOS 11 的 v14)见
- https://developer.apple.com/documentation/safariservices/safari_web_extensions
- https://sixcolors.com/post/2021/01/safari-14-added-webextensions-support-so-where-are-the-extensions/
但是,我找不到在所有 3 种主要浏览器中都可以使用的确切标准参考和示例。
或许我们可以深入挖掘很多相关链接
- https://en.wikipedia.org/wiki/Browser_extension
- https://extensionworkshop.com/documentation/develop/porting-a-google-chrome-extension/
- https://developer.chrome.com/docs/extensions/reference/
但是是否有工具/库可以跟踪兼容性并确保
请确认要使用哪些术语,指出将强制兼容性的规范和工具。
解决方案
截至 2021 年 7 月 30 日
Mozilla MDN 有微小的注释浏览器 API 差异
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API#browser_api_differences
和兼容性摘要浏览器对 JavaScript API 的支持
https://developer.mozilla .org/en-US/docs/Mozilla/Add-ons/WebExtensions/Browser_support_for_JavaScript_APIs,
manifest.json
浏览器兼容性
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/manifest.json#browser_compatibility
W3C WebExtensions 社区组 (WECG) 的规范只是作为 Pull Request https://github.com/w3c/webextensions的第一稿
推荐阅读
- node.js - 如何在 Express GraphQL 中的 2 个解析器函数之间共享数据?
- c++ - 使用合并排序对链表进行排序时得到错误答案
- c++ - 如何推导出模板多个可变参数?
- python - 根据给定列表中的值替换列中的值
- sequelize.js - 在 Seqeualize 中仅查找具有关联子项的结果
- python - 如何检查当前数组元素是否出现在另一个数组的子数组中?
- go - 相同对象值的不同 api 响应
- kubernetes - Istio 127.0.0.6
- jpa - 无效的 IN 查询/语句,带有太多“?” 范围
- javascript - JavaScript:引用匿名类静态变量