参数为String类型,指定类名
Document.prototype.getByClassName = function ( className ){ var ansArr = []; var allClass = document.getElementsByTagName('*'); //得到所有的DOM标签元素 返回的是类数组 var allDomArr = Array.prototype.slice.call(allClass,0); //通过改变this指向,变成数组 // 去掉DOM元素中className多余空格 function dealClass(dom) { var reg = /\s+/g; var arrClassName = dom.className.replace(reg,' ').trim(); return arrClassName; //返回的是字符串 } allDomArr.forEach( function (ele,index){ var allitemarr = dealClass(ele).split(' '); // 字符串中split 以空格拆分成数组 for(var i = 0; i < allitemarr.length; i++){ if(allitemarr[i] == className){ ansArr.push(ele); break; } } }); return ansArr; }