Отличная книга Дэвида Фланагана по JavaScript содержит пример, показывающий, как выполнять запросы XPath в IE. На странице 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 или documentElement. Что здесь происходит?