向 JavaScript Firefox 扩展添加功能时遇到问题?

Problem with adding functionality to JavaScript Firefox Extension?

作品:

chrome.browserAction.onClicked.addListener(function (tabs) {
  if (allowedAddresses(tabs.url)) {
    chrome.tabs.sendMessage(tabs.id, { command: "getVideosArray" }, function (
      response
    ) {
      setIconBadgeTextFromValue(tabs.id, response);
    });
  }
});

但是当我希望它指定使用了哪个鼠标键时不起作用:

chrome.browserAction.onClicked.addListener(function (tabs) {
  if (allowedAddresses(tabs.url) && OnClickData.button == 0) {
    chrome.tabs.sendMessage(tabs.id, { command: "getVideosArray" }, function (
      response
    ) {
      setIconBadgeTextFromValue(tabs.id, response);
    });
  }
});

文档:https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/browserAction/onClicked

我使用的是受支持的 firefox 版本 (85.0)

我正在尝试最终区分 middle/left 键或让它能够使用“修饰符”来检测是否在按下修饰键的情况下单击了鼠标。

OnClickData 是传递给回调函数的第二个参数,用于browserAction.onClicked.addListener。所以你的回调函数定义应该是这样的:

chrome.browserAction.onClicked.addListener(function (tabs, OnClickData) {
 /// ...
});