首页 > 解决方案 > 有没有办法从第三方脚本(如扩展的上下文 JavaScript 文件)重写通知 API 初始对象?

问题描述

我想添加到我的扩展功能,以防止所有网站从其自己的列表表单中询问“显示通知”或“录制音频”内容。

JS 中有一个 API - https://developer.mozilla.org/en-US/docs/Web/API/Notifications_API - 它允许您跟踪您创建的通知。但不是现有的。

我说的是浏览器内通知,当您进入此处的网站时会询问:https ://developer.mozilla.org/en-US/docs/Web/API/Notifications_API/Using_the_Notifications_API - 只是为了清楚。

所以基本上想法是用自制的东西替换通知api的“主对象”,所以当它调用时,它就不会被创建。

我们无法通过来自外部脚本的通知来操作这个窗口,它创建了它,对吧?

chrome 扩展有一个设置,它在页面下载之前执行它的脚本——我还没有尝试过,但我相信不会有任何不同的结果。

正如我在 mozilla 的示例中测试的那样,我在屏幕上显示通知之前重写了初始 API 对象,我相信,您无法从扩展的脚本中访问“全局”脚本。

那么我是否遗漏了什么,或者无法禁止一些有趣的网站向您显示通知?那为什么?无论如何,Chrome 都允许您手动操作。我会欣赏一些自动化。

标签: javascriptgoogle-chrome-extensionnotifications

解决方案


推荐阅读