//此方法可以區分class相同的不同元素(功能相對齊全,理解起來也相對復雜一些)
function getElementsByClassName( parent,tag,className ){
//獲取所有父節點下的tag元素
var aEls = parent.getElementsByTagName(tag);
var arr = [];
//循環所有tag元素
for (var i = 0; i < aEls.length; i++) {
//將tag元素所包含的className集合(這里指一個元素可能包含多個class)拆分成數組,賦值給aClassName
var aClassName = aEls[i].className.split(' ');
//遍歷每個tag元素所包含的每個className
for (var j = 0; j < aClassName.length; j++) {
//如果符合所選class,添加到arr數組
if(aClassName[j] == className){
arr.push(aEls[i]);
//如果className里面包含'box' 則跳出循環
break; //防止一個元素出現多次相同的class被添加多次
}
};
};
return arr;
}
//此方法不能區分class相同的不同元素
function getClassName( oParent,oClassName ){
//獲取父節點下所有子元素
var aEle = oParent.getElementsByTagName('*');
var arr = [];
for (var i = 0; i < aEle.length; i++) {
if( aEle[i].className == oClassName ){
arr.push( aEle[i] );
}
};
return arr;
}