1
0
mirror of https://github.com/gryf/pentadactyl-pm.git synced 2026-02-22 08:05:46 +01:00

Fix :js context on Minefield.

This commit is contained in:
Kris Maglione
2011-09-17 00:08:02 -04:00
parent 423767238b
commit 057600d780
7 changed files with 66 additions and 20 deletions

View File

@@ -1399,18 +1399,26 @@ var DOM = Class("DOM", {
* @param {Node} elem The context element.
* @param {boolean} asIterator Whether to return the results as an
* XPath iterator.
* @param {object} namespaces Additional namespaces to recognize.
* @optional
* @returns {Object} Iterable result of the evaluation.
*/
XPath: update(
function XPath(expression, elem, asIterator) {
function XPath(expression, elem, asIterator, namespaces) {
try {
let doc = elem.ownerDocument || elem;
if (isArray(expression))
expression = DOM.makeXPath(expression);
let resolver = XPath.resolver;
if (namespaces) {
namespaces = update({}, DOM.namespaces, namespaces);
resolver = function (prefix) namespaces[prefix] || null;
}
let result = doc.evaluate(expression, elem,
XPath.resolver,
resolver,
asIterator ? Ci.nsIDOMXPathResult.ORDERED_NODE_ITERATOR_TYPE : Ci.nsIDOMXPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
null
);