选择所有元素,文本节点和注释节点的XPath表达式的顺序与它们在文档中出现的顺序相同?
以下有效选择所有元素,但不选择文本节点和注释节点:
var result = document.evaluate('//*', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null),
index = -1;
while (++index < result.snapshotLength) {
console.log(result.snapshotItem(index));
}
有可能做以下事情吗? (注意:这是非功能性伪代码 . )
document.evaluate('//* and text() and comment()');
2 回答
选择每个节点的子节点:即所有元素,文本节点,注释和处理指令(但不是属性,命名空间节点或文档节点)
在XML文档中使用文本和注释节点进行测试 . 可能有一种更有效的方法,但是这会使用union返回文档顺序的元素,文本和注释节点: