David Flanagan的JavaScript优秀书籍中有一个例子展示了如何在IE中执行XPath查询。在第五版的518页,您可以看到以下代码片段,取自示例21-10:
// In IE, the context must be an Element not a document,
// so if the context is a document, use the documentElement instead
if (context == doc) context = doc.documentElement;
return context.selectNodes(this.xpathText);
我发现这段代码是绝对必要的,这是我吃了亏才知道。在IE浏览器上,XMLHttpRequest似乎会随机返回接收到的XML文档或文档元素的引用(尽管我不明白为什么会这样)。这是怎么回事?