2. 用JavaScript实现getElementsByClass功能,即获取某个元素下含有某个class的所有元素。要求不使用任何第三方库或框架。
如以下代码:
<div id="”test”">
<div class=”clsA”>A</div>
<div class=”clsB”>B</div>
<div class=”clsA”>C</div>
<div class=”clsC”>D</div>
<div class=”clsA”>E</div>
</div>
获取以上所有class为clsA的元素,并存储到数组中。
//1.可以让低版本的浏览器使用 function getElementsByClassName(classname, node) { if(!node) node = document.getElementsByTagName("body")[0]; var a = []; var re = new RegExp('\\b' + classname + '\\b'); var els = node.getElementsByTagName("*"); for(var i=0,j=els.length; i<j; i++) if(re.test(els[i].className))a.push(els[i]); return a; } //2.在比较新的浏览器版本 可以直接使用 document.getElementsByClassName("clsA");
var dom = docuemnt.getElementById("test").getElementsByClass("clsA");
var arry = new Array();
for(var i=0;i<dom.length;i++)
{
arry.push(dom[i]);
}