//接口封装:封装document.getElementByClassName()函数
function getElementsByClassName (cName,domTag,root) {//该函数有三个参数:第一个参数是class名(必选,字串形式);第二个参数是父容器(可选),默认为body节点;第三个参数是该DOM节点的标签名(字串形式)
if (root) {
root = typeof root == "string" ? document.getElementById(root) : root;
} else{
root = document.body;
};
domTag = domTag || "*";
var els = root.getElementsByTagName(domTag);
var arr = [];
for (var i = 0,n = els.length; i < n; i++) {
for (var j = 0,k = els[i].className.split(" "),l = k.length; j < l; j++) {
if (k[j] == cName) {
//console.log(els[i]);//这就是输出的标签DOm元素对象
// return els[i];els[i]就是Dom节点对象,追加到数组中保存
arr.push(els[i]);
break;
}
}
}
return arr;//返回的虽然是数组,但是数组存储的都是一个个Dom元素节点,在外面要调用节点的话,用arr[0]这种方法调用即可
}
js原生:封装document.getElementByClassName()函数
最新推荐文章于 2024-06-20 14:42:51 发布