--- /dev/null
+// Evaluates an XPath against a given node
+function webdeveloper_evaluateXPath(node, xPath)
+{
+ var result = null;
+ var resultList = new Array();
+ var xPathEvaluator = new XPathEvaluator();
+ var results = null;
+
+ // If the node has an owner document
+ if(node.ownerDocument)
+ {
+ results = xPathEvaluator.evaluate(xPath, node, xPathEvaluator.createNSResolver(node.ownerDocument.documentElement), 0, null);
+ }
+ else
+ {
+ results = xPathEvaluator.evaluate(xPath, node, xPathEvaluator.createNSResolver(node.documentElement), 0, null);
+ }
+
+ // Loop through the results
+ while((result = results.iterateNext()) != null)
+ {
+ resultList.push(result);
+ }
+
+ return resultList;
+}
\ No newline at end of file