JS兼容getElementsByClassName
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JS兼容getElementsByClassName相关的知识,希望对你有一定的参考价值。
getElementsByClassName是通过class来获取DOM,但是IE8及以下不能兼容。这里做了一下兼容性。
html:
<div class="pox">我是pox</div>
兼容JS:
function getByClassName(ClassName){ if(document.getElementsByClassName){ return document.getElementsByClassName(ClassName); }else{ var aEle=document.getElementsByTagName(‘*‘); var arr=[]; for(var i=0;i<aEle.length;i++){ if(aEle[i].className==ClassName){ arr.push(aEle[i]) } } return arr; } }
测试:
window.onload=function(){ function getByClassName(ClassName){ if(document.getElementsByClassName){ return document.getElementsByClassName(ClassName); }else{ var aEle=document.getElementsByTagName(‘*‘); var arr=[]; for(var i=0;i<aEle.length;i++){ if(aEle[i].className==ClassName){ arr.push(aEle[i]) } } return arr; } } var Box=getByClassName(‘pox‘)[0]; alert(Box.innerHTML); }
结果:
IE7谷歌火狐
以上是关于JS兼容getElementsByClassName的主要内容,如果未能解决你的问题,请参考以下文章