devtools.panels.ElementsPanel.setExpression()

Evaluates an expression in the context of the inspected page, and displays the result in the extension sidebar pane.

The expression's execution context is the same as that for inspectedWindow.eval().

JSON objects and DOM nodes are displayed as an expandable tree, as in the JSON viewer in Firefox. You can optionally specify a rootTitle string: this will be displayed as the title of the tree's root.

This is an asynchronous function that returns a Promise.

Syntax

js
let evaluating = browser.devtools.panels.setExpression(
  expression,       // string
  rootTitle         // string
)

Parameters

expression

string. The expression to evaluate.

rootTitle Optional

string. The title of the root of the tree in which results are displayed.

Return value

A Promise that will be fulfilled with no arguments, once the expression has been evaluated.

Browser compatibility

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Firefox for Android
Safari on iOS
setExpression

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support
See implementation notes.

Examples

This code creates a sidebar pane that displays the tagName of the currently selected element:

js
function onCreated(sidebarPane) {
  browser.devtools.panels.elements.onSelectionChanged.addListener(() => {
    const exp = "$0 && $0.tagName";
    const title = "Selected Element tagName";
    sidebarPane.setExpression(exp, title);
  });
}

browser.devtools.panels.elements.createSidebarPane("My pane").then(onCreated);

Note: This API is based on Chromium's chrome.devtools.panels API.