-4

是否索引到NodeList使用[]而不是item()完全可靠的跨浏览器,并且(单独)它是否记录在任何地方?例如:

var firstDiv = document.getElementsByTagName('div')[0];

NodeList据我所知,接口的最新定义在 DOM3中,而 JavaScript 绑定的最新文档在DOM2 版本中。我没有看到任何关于索引NodeLists via 的内容[],但我看到人们一直在这样做(我自己也经常这样做,但总是有点紧张)。

因此,我在包括 IE6 在内的一系列浏览器上进行了尝试,并且在我尝试过的所有浏览器中都表现出色(IE6、IE9、Chrome 16、Firefox 10、Firefox 5、Opera 11、Safari 5、Konqueror 4.7、Epiphany 3.0、Midori 0.4)。这很好,除了我周围没有几十个边缘案例浏览器。

因此,我正在寻找以前曾走过这条路的任何人的意见。它是完全可靠的跨浏览器吗?理想情况下它是否记录在任何地方?

4

2 回答 2

3

您的一个链接 (我的重点)

NodeList 中的项目可以通过一个从 0 开始的整数索引来访问。

另一个链接

NodeList 对象具有以下方法:

item(index) 此方法返回一个 Node 对象。index 参数的类型为 Number。注意:该对象也可以使用方括号表示法取消引用(例如 obj [ 1 ] )。使用整数索引取消引用等效于使用该索引调用 item 方法。

所以是的,它被记录在案。并且可靠。

于 2012-02-09T16:15:47.630 回答
1

是的。它是绝对可靠的跨浏览器。要么,要么我写过的大部分 JavaScript 都中断了,还有 jQuery :)

对于至少一些文档,请参阅Mozilla Developer Network JavaScript 参考

通过索引或null超出范围返回列表中的项目。相当于nodeList[idx]

于 2012-02-09T16:15:43.253 回答