menus.getTargetElement()

Gibt das Element für eine gegebene targetElementId zurück.

Diese Methode ist für alle Erweiterungsskript-Kontexte verfügbar (Inhalts-Skripte, Hintergrundseiten und andere Erweiterungsseiten) und gibt das Element für eine gegebene info.targetElementId zurück, vorausgesetzt, dass das Element noch im Dokument vorhanden ist, in dem die Methode aufgerufen wird.

Die Methode funktioniert nur im Dokument, das das mit der rechten Maustaste angeklickte Element enthält, und die targetElementId verfällt, wenn der Benutzer ein anderes Kontextmenü öffnet.

Note: menus.getTargetElement gibt das angeforderte Element nur dann zurück, wenn es im selben Kontext wie das Dokument aufgerufen wird, das das Element enthält, beispielsweise durch die Verwendung von Inhalts-Skripten (wie im unten stehenden Beispiel gezeigt).

Eine Erweiterung benötigt die Berechtigung "menus", um diese API zu verwenden.

Syntax

js
let elem = browser.menus.getTargetElement(targetElementId);

Parameter

targetElementId

Die Eigenschaft des menus.OnClickData-Objekts, das an den menus.onClicked-Handler oder das menus.onShown-Ereignis übergeben wird.

Rückgabewert

Das Element, auf das durch den targetElementId-Parameter verwiesen wird. Wenn der targetElementId-Parameter nicht gültig ist, gibt die Methode null zurück.

Beispiele

Das folgende Beispiel verwendet die Methode getTargetElement, um das Element zu erhalten, auf das durch die Eigenschaft info.targetElementId verwiesen wird, und entfernt es dann.

js
browser.menus.create({
  title: "Remove element",
  documentUrlPatterns: ["*://*/*"],
  contexts: [
    "audio",
    "editable",
    "frame",
    "image",
    "link",
    "page",
    "password",
    "video",
  ],
  onclick(info, tab) {
    browser.tabs.executeScript(tab.id, {
      frameId: info.frameId,
      code: `browser.menus.getTargetElement(${info.targetElementId}).remove();`,
    });
  },
});

Beispielerweiterungen

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch