Tag: 元素的

获得子节点的最佳方法

我想知道,JavaScript提供了各种方法来获取任何元素的第一个子元素,但哪个最好? 我最好的意思是:大多数跨浏览器兼容,最快,最全面和可预测的行为。 我用作别名的方法/属性列表: var elem = document.getElementById('container'); var child = elem.children[0]; var child = elem.firstElementChild; // == children[0] 这适用于这两种情况: var child = elem.childNodes[0]; // or childNodes[1], see below 这是在forms,或<div>迭代的情况下。 如果我可能遇到文本元素: var child = elem.childNodes; // treat as NodeList var child = elem.firstChild; 据我firstChild , firstChild使用childNodes的NodeList, firstElementChild使用children 。 我在MDN参考基础上的这个假设: childNode是对元素节点的第一个子元素的引用,如果没有,则为null 。 我猜测,就速度而言,如果有的话,差异将firstElementChild没有,因为firstElementChild是firstElementChild children[0]的引用,并且children对象已经在内存中。 什么引起我,是childNodes对象。 我用它来查看一个表格元素。 当children列出所有的表单元素时, […]