document.evaluate() 就是通过 xpath 获取 dom 节点。
返回的结果通过 .iterateNext() 可以获得 dom 对象,每次调用会少一个,当没有时就返回空。
返回匹配到的第一个 xpath 对应的 dom 节点。
function x(xpath) {
var result = document.evaluate(xpath, document, null, XPathResult.ANY_TYPE, null);
return result.iterateNext()
}
返回匹配到 xpath 的 dom 节点个数。
function x(xpath) {
var result = document.evaluate(xpath, document, null, XPathResult.ANY_TYPE, null);
var i = 0;
while(result.iterateNext()){
i++;
}
return i;
}