本文介绍了在Firefox和Internet Explorer中使用XPath选择HTML元素的结果不同的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在文档中选择一个特定的HTML元素,对于firefox我只是使用:

I'm trying to select a specific HTML element in a document, for firefox i just use:

xpathobj = document.evaluate(xpath, document, null,
               XPathResult.FIRST_ORDERED_NODE_TYPE, null);

工作正常。但是,当我尝试IE等效时:

which works fine. However when I try the IE equivilent:

xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.load(document);
xmlDoc.setProperty("SelectionLanguage", "XPath");
xpathobj = xmlDoc.selectNodes(xpath);

我没有返回任何对象。所以我的问题是有一个简单的方法来使用XPath来获取我想要的元素在IE中?
我使用的XPath看起来像

I get no object returned. So my question is there an easy way to use XPath to get to the element I want in IE?The XPath I'm using looks like

/HTML/BODY/DIV[9]/DIV[2]


推荐答案

问题可能是在IE5 + [1]中实际上[2]在FF中。 Microsoft完全决定编号应该从[0]开始,而不是由w3c指定的[1]。

The problem may be that in IE5+ [1] is in fact [2] in FF. Microsoft solely decided that the numbering should start at [0] and not [1] as specified by w3c.

这篇关于在Firefox和Internet Explorer中使用XPath选择HTML元素的结果不同的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-30 09:56