getElementById(" div")。getElementsByClassName(" class")在IE8中不起作用

时间:2015-09-17 08:16:01

标签: javascript internet-explorer

我正在使用它:

document.getElementById("div").getElementsByClassName("class");

上述内容似乎适用于Chrome和FireFox,但不适用于IE8。

我正在使用

document.getElementById("branch").getElementsByClassName("branch.address");

上面一行取了一行但是使用了这个

document.getElementById("branch").querySelectorAll("branch.address");

取空

如何在IE8中完成这项工作?

2 个答案:

答案 0 :(得分:1)

问题不是getElementById,而是getElementsByClassName - IE8没有。

相反,您可以使用querySelectorAll,它可以在所有现代浏览器上使用,也可以使用IE8:

document.getElementById("div").querySelectorAll(".class");

或者一体化:

document.querySelectorAll("#div .class");

querySelectorAll接受任何CSS选择器,并返回匹配元素的列表。还有querySelector,它接受​​任何CSS选择器,并返回第一个匹配元素(如果没有匹配,则返回null。)

答案 1 :(得分:0)

IE8不支持getElementsByClassName()。有关详细信息,请参阅此post。另请参阅已发布here的链接,以获取有关解决方法的SO帖子。