我有一个问题,我的代码在Chrome上可以100%正常运行,它的工作是从表行中获取文本和值,但是一旦进入IE,它就会停止工作,我将其范围缩小到childNodes,这是一个在IE中不起作用的代码的快速示例:
var t = document.getElementById('tableFull');
for (var i = 1, row; row = t.rows[i]; i++) {
var tee = t.childNodes[3].childNodes[i].rowIndex;
var subtractCost =t.childNodes[3].childNodes[i].childNodes[1].childNodes[1].innerHTML;
var subtractName = t.childNodes[3].childNodes[i].childNodes[0].childNodes[0].innerHTML;
}
有谁知道我可以在这里为IE替换childNodes吗?
最佳答案
childNodes的计数有所不同。有些浏览器包含空的textNode,有些则没有。我相信您正在描述这种操作,最好使用父级的getElementsByTagName()
方法。这样,您正在寻找的每个孩子的孩子数量和索引将保持一致。
或者您可以尝试使用.children
而不是childNodes
希望这会有所帮助
关于javascript - 子节点无法在Internet Explorer中工作?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25401378/