XPath не возвращает ожидаемый результат, если документ анализируется из строки - PullRequest
0 голосов
/ 28 июня 2019

Я пытаюсь вычислить XPath из строки, проанализированной в документе, но любой XPath возвращает ноль, пока работает с объектом window.document.

<!DOCTYPE html>
<html>
  <head>
  </head>
  <body>
    <div>XPath</div>
    <script>
        var parser = new DOMParser();
        var docFromString = parser.parseFromString(document.outerHTML,"text/html")

        var evaluator = new XPathEvaluator();
        var resultFromStringDoc = evaluator.evaluate("//div", docFromString, null, XPathResult.FIRST_ORDERED_NODE_TYPE);
        console.log(resultFromStringDoc.singleNodeValue);

        var resultFromDoc = evaluator.evaluate("//div", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE);
        console.log(resultFromDoc.singleNodeValue);   
    </script>
  </body>
</html>

В resultFromDoc div найден, как и ожидалось. resultFromStringDoc.singleNodeValue имеет значение null.

Что я здесь не так делаю?

...