Beschreibung
Mit der chrome.devtools.panels
API können Sie Ihre Erweiterung in die Benutzeroberfläche des Fensters „Entwicklertools“ einbinden: Erstellen Sie eigene Steuerfelder, greifen Sie auf vorhandene Steuerfelder zu und fügen Sie Seitenleisten hinzu.
Jedes Erweiterungssteuerfeld und jede Seitenleiste wird als separate HTML-Seite angezeigt. Alle Erweiterungsseiten, die im Fenster „Entwicklertools“ angezeigt werden, haben Zugriff auf alle Teile der chrome.devtools
API sowie auf alle anderen Erweiterungs-APIs.
Mit der Methode devtools.panels.setOpenResourceHandler
können Sie eine Rückruffunktion installieren, die Nutzeranfragen zum Öffnen einer Ressource verarbeitet (in der Regel ein Klick auf einen Ressourcenlink im Fenster „Entwicklertools“). Es wird höchstens einer der installierten Handler aufgerufen. Nutzer können im Dialogfeld „Einstellungen für Entwicklertools“ entweder das Standardverhalten oder eine Erweiterung zum Verarbeiten von Anfragen für offene Ressourcen angeben. Wenn eine Erweiterung setOpenResourceHandler()
mehrmals aufruft, wird nur der letzte Handler beibehalten.
Eine allgemeine Einführung in die Verwendung von DevTools APIs finden Sie unter DevTools APIs – Zusammenfassung.
Manifest
Die folgenden Schlüssel müssen im Manifest deklariert werden, damit diese API verwendet werden kann.
"devtools_page"
Beispiel
Der folgende Code fügt ein Steuerfeld in Panel.html
hinzu, das in der Symbolleiste der Entwicklertools durch FontPicker.png
dargestellt und als Schriftauswahl gekennzeichnet ist:
chrome.devtools.panels.create("Font Picker",
"FontPicker.png",
"Panel.html",
function(panel) { ... });
Im folgenden Code wird dem Bereich „Elemente“ ein Seitenleistenbereich mit dem Titel Schriftschnitteigenschaften hinzugefügt, der in Sidebar.html
enthalten ist. Die Höhe wird auf 8ex
festgelegt:
chrome.devtools.panels.elements.createSidebarPane("Font Properties",
function(sidebar) {
sidebar.setPage("Sidebar.html");
sidebar.setHeight("8ex");
}
);
Der Screenshot zeigt die Auswirkungen dieses Beispiels auf das Fenster „Entwicklertools“:
Wenn Sie diese API ausprobieren möchten, installieren Sie das API-Beispiel für devtools-Steuerfelder aus dem Repository chrome-extension-samples.
Typen
Button
Eine Schaltfläche, die von der Erweiterung erstellt wurde.
Attribute
-
onClicked
Event<functionvoidvoid>
Wird ausgelöst, wenn auf die Schaltfläche geklickt wird.
Die
onClicked.addListener
-Funktion sieht so aus:(callback: function) => {...}
-
callback
Funktion
Der Parameter
callback
sieht so aus:() => void
-
-
update
void
Aktualisiert die Attribute der Schaltfläche. Wenn einige der Argumente weggelassen oder
null
sind, werden die entsprechenden Attribute nicht aktualisiert.Die
update
-Funktion sieht so aus:(iconPath?: string, tooltipText?: string, disabled?: boolean) => {...}
-
iconPath
String optional
Pfad zum neuen Symbol der Schaltfläche.
-
tooltipText
String optional
Text, der als Kurzinfo angezeigt wird, wenn der Nutzer den Mauszeiger auf die Schaltfläche bewegt.
-
deaktiviert
boolescher Wert optional
Gibt an, ob die Schaltfläche deaktiviert ist.
-
ElementsPanel
Stellt den Elementbereich dar.
Attribute
-
onSelectionChanged
Event<functionvoidvoid>
Wird ausgelöst, wenn ein Objekt im Steuerfeld ausgewählt wird.
Die
onSelectionChanged.addListener
-Funktion sieht so aus:(callback: function) => {...}
-
callback
Funktion
Der Parameter
callback
sieht so aus:() => void
-
-
createSidebarPane
void
Erstellt einen Bereich in der Seitenleiste des Steuerfelds.
Die
createSidebarPane
-Funktion sieht so aus:(title: string, callback?: function) => {...}
-
Titel
String
Text, der in der Seitenleiste angezeigt wird.
-
callback
function optional
Der Parameter
callback
sieht so aus:(result: ExtensionSidebarPane) => void
-
Ergebnis
Ein ExtensionSidebarPane-Objekt für die erstellte Seitenleiste.
-
-
ExtensionPanel
Stellt einen Bereich dar, der von einer Erweiterung erstellt wurde.
Attribute
-
onHidden
Event<functionvoidvoid>
Wird ausgelöst, wenn der Nutzer den Bereich verlässt.
Die
onHidden.addListener
-Funktion sieht so aus:(callback: function) => {...}
-
callback
Funktion
Der Parameter
callback
sieht so aus:() => void
-
-
onSearch
Event<functionvoidvoid>
Wird bei einer Suchaktion ausgelöst (Start einer neuen Suche, Navigation in den Suchergebnissen oder Abbruch der Suche).
Die
onSearch.addListener
-Funktion sieht so aus:(callback: function) => {...}
-
callback
Funktion
Der Parameter
callback
sieht so aus:(action: string, queryString?: string) => void
-
Aktion
String
-
queryString
String optional
-
-
-
onShown
Event<functionvoidvoid>
Wird ausgelöst, wenn der Nutzer zum Steuerfeld wechselt.
Die
onShown.addListener
-Funktion sieht so aus:(callback: function) => {...}
-
callback
Funktion
Der Parameter
callback
sieht so aus:(window: Window) => void
-
Fenster
Fenster
-
-
-
createStatusBarButton
void
Fügt der Statusleiste des Steuerfelds eine Schaltfläche hinzu.
Die
createStatusBarButton
-Funktion sieht so aus:(iconPath: string, tooltipText: string, disabled: boolean) => {...}
-
iconPath
String
Pfad zum Symbol der Schaltfläche. Die Datei sollte ein Bild mit 64 × 24 Pixeln enthalten, das aus zwei Symbolen mit 32 × 24 Pixeln besteht. Das linke Symbol wird verwendet, wenn die Schaltfläche inaktiv ist. Das rechte Symbol wird angezeigt, wenn die Schaltfläche gedrückt wird.
-
tooltipText
String
Text, der als Kurzinfo angezeigt wird, wenn der Nutzer den Mauszeiger auf die Schaltfläche bewegt.
-
deaktiviert
boolean
Gibt an, ob die Schaltfläche deaktiviert ist.
-
Gibt zurück
-
ExtensionSidebarPane
Eine von der Erweiterung erstellte Seitenleiste.
Attribute
-
onHidden
Event<functionvoidvoid>
Wird ausgelöst, wenn der Seitenleistenbalken ausgeblendet wird, weil der Nutzer das Steuerfeld verlässt, in dem der Seitenleistenbalken angezeigt wird.
Die
onHidden.addListener
-Funktion sieht so aus:(callback: function) => {...}
-
callback
Funktion
Der Parameter
callback
sieht so aus:() => void
-
-
onShown
Event<functionvoidvoid>
Wird ausgelöst, wenn der Seitenleistenbereich sichtbar wird, weil der Nutzer zum Steuerfeld wechselt, in dem er gehostet wird.
Die
onShown.addListener
-Funktion sieht so aus:(callback: function) => {...}
-
callback
Funktion
Der Parameter
callback
sieht so aus:(window: Window) => void
-
Fenster
Fenster
-
-
-
setExpression
void
Hiermit wird ein Ausdruck festgelegt, der auf der geprüften Seite ausgewertet wird. Das Ergebnis wird in der Seitenleiste angezeigt.
Die
setExpression
-Funktion sieht so aus:(expression: string, rootTitle?: string, callback?: function) => {...}
-
Ausdruck
String
Ein Ausdruck, der im Kontext der geprüften Seite ausgewertet werden soll. JavaScript-Objekte und DOM-Knoten werden in einem auswählbaren Baum angezeigt, ähnlich wie in der Console/Watch.
-
rootTitle
String optional
Ein optionaler Titel für den Stammknoten des Ausdrucksbaums.
-
callback
function optional
Der Parameter
callback
sieht so aus:() => void
-
-
setHeight
void
Damit wird die Höhe der Seitenleiste festgelegt.
Die
setHeight
-Funktion sieht so aus:(height: string) => {...}
-
Höhe
String
Eine CSS-ähnliche Größenangabe wie
'100px'
oder'12ex'
.
-
-
setObject
void
Hiermit wird ein JSON-konformes Objekt festgelegt, das im Seitenleistenbereich angezeigt werden soll.
Die
setObject
-Funktion sieht so aus:(jsonObject: string, rootTitle?: string, callback?: function) => {...}
-
jsonObject
String
Ein Objekt, das im Kontext der geprüften Seite angezeigt werden soll. Wird im Kontext des Aufrufers (API-Client) ausgewertet.
-
rootTitle
String optional
Ein optionaler Titel für den Stammknoten des Ausdrucksbaums.
-
callback
function optional
Der Parameter
callback
sieht so aus:() => void
-
-
setPage
void
Hiermit wird eine HTML-Seite festgelegt, die im Seitenleistenbereich angezeigt werden soll.
Die
setPage
-Funktion sieht so aus:(path: string) => {...}
-
Pfad
String
Relativer Pfad zu einer Erweiterungsseite, die in der Seitenleiste angezeigt werden soll.
-
SourcesPanel
Stellt den Bereich „Quellen“ dar.
Attribute
-
onSelectionChanged
Event<functionvoidvoid>
Wird ausgelöst, wenn ein Objekt im Steuerfeld ausgewählt wird.
Die
onSelectionChanged.addListener
-Funktion sieht so aus:(callback: function) => {...}
-
callback
Funktion
Der Parameter
callback
sieht so aus:() => void
-
-
createSidebarPane
void
Erstellt einen Bereich in der Seitenleiste des Steuerfelds.
Die
createSidebarPane
-Funktion sieht so aus:(title: string, callback?: function) => {...}
-
Titel
String
Text, der in der Seitenleiste angezeigt wird.
-
callback
function optional
Der Parameter
callback
sieht so aus:(result: ExtensionSidebarPane) => void
-
Ergebnis
Ein ExtensionSidebarPane-Objekt für die erstellte Seitenleiste.
-
-
Attribute
elements
Bereich „Elemente“
Typ
sources
Im Bereich „Quellen“
Typ
themeName
Der Name des Farbschemas, das in den DevTools-Einstellungen des Nutzers festgelegt ist. Mögliche Werte: default
(Standard) und dark
.
Typ
String
Methoden
create()
chrome.devtools.panels.create(
title: string,
iconPath: string,
pagePath: string,
callback?: function,
)
Erstellt ein Erweiterungsfeld.
Parameter
-
Titel
String
Titel, der in der Symbolleiste der Entwicklertools neben dem Symbol der Erweiterung angezeigt wird.
-
iconPath
String
Pfad des Symbols des Steuerfelds relativ zum Erweiterungsverzeichnis.
-
pagePath
String
Pfad der HTML-Seite des Steuerfelds relativ zum Erweiterungsverzeichnis.
-
callback
function optional
Der Parameter
callback
sieht so aus:(panel: ExtensionPanel) => void
-
Kartenfeld
Ein ExtensionPanel-Objekt, das das erstellte Steuerfeld darstellt.
-
openResource()
chrome.devtools.panels.openResource(
url: string,
lineNumber: number,
columnNumber?: number,
callback?: function,
)
Erfordert, dass die Entwicklertools eine URL in einem Bereich der Entwicklertools öffnen.
Parameter
-
URL
String
Die URL der zu öffnenden Ressource.
-
lineNumber
Zahl
Gibt die Zeilennummer an, zu der beim Laden der Ressource gescrollt werden soll.
-
columnNumber
number optional
Chrome 114 und höherGibt die Spaltennummer an, zu der beim Laden der Ressource gescrollt werden soll.
-
callback
function optional
Der Parameter
callback
sieht so aus:() => void
setOpenResourceHandler()
chrome.devtools.panels.setOpenResourceHandler(
callback?: function,
)
Gibt die Funktion an, die aufgerufen werden soll, wenn der Nutzer im Fenster „Entwicklertools“ auf einen Ressourcenlink klickt. Wenn Sie den Handler zurücksetzen möchten, rufen Sie die Methode entweder ohne Parameter auf oder übergeben Sie „null“ als Parameter.
Parameter
-
callback
function optional
Der Parameter
callback
sieht so aus:(resource: Resource) => void
-
Ressource
Ein
devtools.inspectedWindow.Resource
-Objekt für die angeklickte Ressource.
-