getElementsByClassName并不支持低版本的IE,所有找了个兼容的写法,
但是这个函数并不支持在class拥有多个值的情况下获取。
请问怎么可以实现。
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Document</title>
<script>
function getByClass(oParent, sClass){
var aEle=oParent.getElementsByTagName('*');
var aResult=[];
for(var i=0;i<aEle.length;i++){
if(aEle[i].className==sClass){
aResult.push(aEle[i]);
}
}
return aResult;
}
</script>
</head>
<body>
<div id="d3">
<span class="s3"></span>
<span class="s3"></span>
<span class="s3 s33"></span>
</div>
<script>
var oD3=document.getElementById('d3');
var aS3=getByClass(oD3,'s3');
alert(aS3.length); //这种情况下aS3.length的值只有2。
</script>
</body>
</html>
相关分类