2

我需要这方面的帮助。我是在 javascript 中使用 XPath 的新手,这让我很困惑。

我的脚本使用 xmlhttp 检索网页的内容,然后将其包装在“div”中:

            div=document.createElement('div');
            div.innerHTML=xmlhttp.responseText.replace(/<img[^>]*>/); 

我需要访问这个包装部门的正文内容,我正在使用 Xpath 来执行此操作:

bodyContent = document.evaluate("//*[@id='bodyContent']", div ,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null);
bodyContent = bodyContent.snapshotItem(0);

虽然这在 Firefox 中运行良好并检索了所需的 XpathObject,但它并没有为 google chrome 浏览器提供所需的结果。它不是返回创建的(并作为 contextNode 传递)的“div”元素的 bodyContent 划分,而是返回当前文档页面的 bodyContent。

我已经检查并在 chrome 中 - 收到了正确的 xmlhttp.reponseText。

关于这个有什么想法吗?

谢谢,

4

1 回答 1

2

是否document.evaluate(".//*[@id='bodyContent']", div ,null,XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null)在两种浏览器中都为您提供所需的结果?

于 2011-06-14T10:55:13.183 回答