javascript document.getElementsByClassName与IE的兼容性
检索具有特定类的元素数组的最佳方法是什么? 我会使用document.getElementsByClassName,但是IE不支持它。 所以我尝试了乔纳森·斯努克的解决方案: function getElementsByClassName(node, classname) { var a = []; var re = new RegExp('(^| )'+classname+'( |$)'); var els = node.getElementsByTagName("*"); for(var i=0,j=els.length; i<j; i++) if(re.test(els[i].className))a.push(els[i]); return a; } var tabs = document.getElementsByClassName(document.body,'tab'); ...但是IE仍然说: 对象不支持此属性或方法 任何想法,更好的方法,错误修复? 我不希望使用任何涉及jQuery或其他“笨拙的javascript”的解决方案。 更新: 我知道了! 正如@joe提到的,该函数不是的方法document。 因此,工作代码如下所示: function getElementsByClassName(node, classname) { var a = []; …