XPath: Difference between revisions
added link to XPath Checker |
No edit summary |
||
Line 12: | Line 12: | ||
Note that relative XPath expressions, that start from some specific node, do not begin with a <code>/</code>. Start them with a period, e.g. <code>.//a</code>, or an axis, e.g. <code>descendant::a</code>. The default axis is <code>child</code>, so just <code>a</code> works to find an immediate descendant. | Note that relative XPath expressions, that start from some specific node, do not begin with a <code>/</code>. Start them with a period, e.g. <code>.//a</code>, or an axis, e.g. <code>descendant::a</code>. The default axis is <code>child</code>, so just <code>a</code> works to find an immediate descendant. | ||
== XPath Checker == | |||
You can quickly determine the xpath to an element with the [https://addons.mozilla.org/en-US/firefox/addon/1095 XPath Checker] addon. Just right-click an element, and select "XPath". A window will popup with the expression. You can also experiment with new expressions, and see the result immidiately. nice! | |||
== Links == | == Links == |
Revision as of 11:59, 6 June 2007
XPath (XML Path Language) is a language for addressing elements in a XML or HTML document. XPath expressions describe paths in a tree represention of the document.
XPath is very fast compared to manual DOM traversal (see e.g. getElementsByClassName Speed Comparison).
This page is intended for tips and gotchas related to using XPath in Greasemonkey scripts, not complete documentation. See the links below for that.
Using XPath in Greasemonkey
The most convenient way to use XPath in Greasemonkey scripts is with a helper function. The insides of that function illustrate the less convenient way.
Relative paths
Note that relative XPath expressions, that start from some specific node, do not begin with a /
. Start them with a period, e.g. .//a
, or an axis, e.g. descendant::a
. The default axis is child
, so just a
works to find an immediate descendant.
XPath Checker
You can quickly determine the xpath to an element with the XPath Checker addon. Just right-click an element, and select "XPath". A window will popup with the expression. You can also experiment with new expressions, and see the result immidiately. nice!