$x
This command returns an array of HTML or XML elements matching the given XPath expression. This means it is actually a shortcut for document.evaluate()
.
Contents[hide] |
[edit] Syntax
$x(xpath [, contextNode [, resultType]])
[edit] Parameters
[edit] xpath
XPath expression used to match the elements to return. This follows the syntax of document.evaluate()
. (required)
[edit] contextNode
Element used as root node for the XPath expression. (optional; added in Firebug 1.11)
[edit] resultType
Object type returned by the function. (optional; added in Firebug 1.11)
Option | document.evaluate() equivalent | Description |
---|---|---|
"number" | XPathResult.NUMBER_TYPE | Numerical value |
"string" | XPathResult.STRING_TYPE | String value |
"bool" | XPathResult.BOOLEAN_TYPE | Boolean value |
"node" | XPathResult.FIRST_ORDERED_NODE_TYPE | Single HTML element |
"nodes" | XPathResult.UNORDERED_NODE_ITERATOR_TYPE | Array of HTML elements |
[edit] Examples
$x("//h1")
This returns an array of all <h1>
s of a page.
$x("//input[@type='checkbox']")
This returns an array of all checkboxes of a page.
$x("count(//h1)>5")
This checks whether there are more than five <h1>
s in the page and returns true
or false
. (requires Firebug 1.11 or higher)
$x("//p/b[1]/text()")
This returns an array of all text nodes within every first <b>
of all <p>
s of a page.
$x(".//button", $$("form")[1])
This returns an array of all <buttons>
within the second <form>
of a page. (requires Firebug 1.11 or higher)
$x("//p", document, "node")
This returns the first <p>
inside the page. (requires Firebug 1.11 or higher)