firefox-addon-webextensions相关内容
我做了一个 Firefox 扩展来获取所有请求的 url 并显示它们.但代码只有在我将其粘贴到控制台时才有效. 当扩展程序加载时它没有显示任何错误,它似乎只是不会运行 这是完整的代码 xhrScript.js (function(){const proxiedOpen = XMLHttpRequest.prototype.open;window.XMLHttpRequest.p
..
不确定为什么当我导航到 amazon.com 或 google.com 并点击浏览器图标进行浏览器操作时,我无法使用 getCurrent() 检索有关当前选项卡的信息.关于我缺少什么的任何提示? 清单: {"name": "testGetCurrentTab",“版本":“1.0",“描述": "",“清单版本":2,“图标":{"48": "图标/icon-48.png"},“权限"
..
我想在页面操作弹出窗口中获取当前选项卡的 URL. 起初看起来很明显:只需使用 tabs API.但是,如果我正确解读文档,这似乎在 Android 上不可用.所以我一直在寻找其他东西,发现 onClicked pageAction API 的事件. pageAction API 似乎被列为与 Android 兼容,并且 onClicked 事件被标记为受支持.这意味着它实际上会返回一个
..
我正在尝试将我在 Firefox 中使用的 Web 扩展移植到 chrome,但我遇到了一些问题.我需要从后台脚本向内容脚本发送一条消息.当我第一次从 Firefox 构建它时,我使用了一个端口,但我将它切换到使用 chrome.tabs.query() 因为 chrome 不断发现错误.但是现在使用 query(),它在 Firefox 中仍然可以正常工作,但是现在 chrome 说它找不到当前
..
我想在页面操作弹出窗口中获取当前选项卡的 URL. 起初似乎很明显:只需使用 tabs API.但如果我正确解读文档,这似乎不适用于 Android.所以我一直在寻找其他东西,并找到了 onClicked pageAction API 的事件. pageAction API 似乎被列为与 Android 兼容,并且 onClicked 事件被标记为受支持.所以这意味着它实际上会返回一个 t
..
我说的是 Chrome 扩展程序、Firefox WebExtensions、Edge 扩展程序... 在后台脚本而不是内容脚本中,是否有一种明确的方法可以知道我使用的是哪个浏览器?我需要针对不同的浏览器做不同的操作. 是的,navigator.userAgent 很有用,但不太清楚. 是否有任何扩展 API 可用于执行此操作?类似于 chrome.extension.brows
..
我的 Chrome 扩展弹出窗口中有一个文本区域和一个按钮.我希望用户在文本区域输入所需的文本.然后,一旦他们点击按钮,它就会注入一个内容脚本,将当前页面上具有 的字段的文本更改为用户输入的文本在 Chrome 扩展弹出窗口的 中. 我的问题是,如何从 popup.html 中的 获取文本并从 popup.js 到内容脚本? 这是
..
我正在创建网站拦截器:在您访问已拦截的网站后,浏览器会显示一个新的 HTML 页面,上面写着“网站已拦截".新的 HTML 页面在我的 Chrome 扩展程序中保存为 message.html.有没有办法在浏览器中显示 message.html ?如果没有,我将只使用内容脚本来注入一些 JavaScript. 解决方案 更新选项卡以显示 message.html 假设以下所有情况都为
..
过去几周我一直在编写一些浏览器扩展程序,直到今天我认为 Firefox 的 WebExtension 应该可以在 Chrome 中自动运行.所以我试着按照 Mozilla 的例子写我的代码. 但是今天我意识到 Chrome 扩展的 API 文档中没有提到 Promises. 我在所有扩展的代码中都严格使用了 Promise. 那么现在我的问题是,我的代码可以在 Chrome 中运行吗?或
..
我在寻找一种简单的方法来开发 Firefox 扩展时投入了很多东西,但我无法创建一个扩展.请告诉我 Firefox 扩展的文件结构和安装扩展的简单方法. 解决方案 .xpi 文件格式(扩展打包) 用作 Mozilla(Firefox、Thunderbird 等)扩展的容器的 .xpi 文件只是将文件扩展名更改为 .xpi 使用“deflate"将文件添加到存档中压缩或未压缩.如果您使
..
我正在尝试测试浏览器网络扩展的示例代码.但是,它不起作用.我检查了 Google Chrome 和 Firefox 的控制台.它不打印任何东西.以下是我的代码: manifest.json: {"description": "演示 webRequests",“清单版本":2,"name": "webRequest-demo","版本": "1.0",“权限":[“网络请求"],“背景":
..
我遇到了将数据从我的后台脚本发送到我的 pageAction 脚本的问题.我的内容脚本添加了一个 并且 中的 JavaScript 正在从我的后台脚本接收数据,但它似乎没有在我的 pageAction 中检索. 在我的后台脚本中,我有类似的内容: chrome.tabs.sendMessage(senderTab.tab.id,{富:酒吧}); 其
..
我对这么多不同的方法、指南感到不知所措,但我没有尝试为我工作.请至少为我连接一些点... 我的目标是在 Firefox WebExtension 的后台脚本中找到一个窗口对象. 问题,我无法导入Services 库来使用它来查找window 对象. 我尝试过的两种方法: Components.utils.import("resource://gre/modules/Serv
..
我对如何使弹出窗口中添加的内容不会在每次打开新链接或“离开"时消失的方法感到非常困惑.我已经阅读了内容脚本、背景脚本等内容,但老实说我不知道如何将其实现到我自己的源代码中.下面是我的 popup.html、popup.js 和我的 manifest.js 文件. {“清单版本":2,"name": "URL_save","description": "此扩展程序保存一个 URL 并将标题重命
..
这似乎是最容易做的事情,但就是行不通.在普通浏览器中,.html 和 .js 文件可以完美运行,但在 Chrome/Firefox 扩展中,onClick 函数没有执行它应该做的事情. .js 文件: function hellYeah(text) {document.getElementById("text-holder").innerHTML = text;} .html 文件:
..
我正在开发 Chrome 扩展程序,我想检测用户何时输入了 URL.我知道: chrome.tabs.onUpdated.addListener(eventLisenerObj.onUpdated); 但是,每当 URL 更改时(例如,当页面自动重新加载,或用户点击链接等)时,它就会被调用 我希望能够确定仅通过用户输入 URL 更改了 URL. 解决方案 您可以使用 webNav
..
我正在尝试在网络扩展中使用共享的 vue.js 状态. 状态存储在后台脚本的 DOM 中并呈现在弹出页面中. 第一次尝试 我的第一次尝试是使用一个没有 vuex 的简单存储: background.js var store = {计数:0}; popup.js browser.runtime.getBackgroundPage().then(bg => {var st
..
我正在尝试编写一个Web扩展,我需要将对象从内容脚本传递到页面脚本.除其他外,我看过 https://developer.mozilla.org/zh-CN/Add-ons/WebExtensions/Content_scripts#Sharing_content_script_objects_with_page_scripts 和 然后在页面脚本中,这个: window.messeng
..
我正在尝试覆盖Firefox的WebExtension中的 XMLHttpRequest.protype.open 方法.我已经在内容脚本中编写了以下代码 var oldOpen = XMLHttpRequest.prototype.open;XMLHttpRequest.prototype.open =函数(方法,URL,异步,用户,通过){console.log("url:" + url
..
我的目标 …将具有一个Web扩展(目前在Firefox中),以尽可能透明地拦截和修改站点的XMLHttpRequests问题.最好的情况是,即使明确寻找扩展名,该站点也无法检测到该扩展名.例如,我希望能够在发送关键数据之前自动对其进行编辑/替换,或者对大型图像进行高速缓存,尽管原始页面明确将其禁用. 原始方法 使用后台脚本和带有 blocking 的 browser.webReq
..