JavaScript:className获取元素、封装函数getByClass
<ul>下有8个<li>标签如下,其中4个li标签的class为box,通过以下语句可以选出这4个元素
window.onload = function(){ var oUl = document.getElementById('ul1'); var aLi = oUl.getElementsByTagName('li'); for (var i = aLi.length - 1; i >= 0; i--) { if(aLi[i].className == 'box'){ alert(aLi[i].className); } } };if语句中替换成如下代码,可以将box背景色变成红色
aLi[i].style.backgroundColor = 'red';
下面封装一个函数getByClass( oParent,className ),返回值为所有类名为className的元素
function getByClass(oParent,className){ var result = []; var aElement = oParent.getElementsByTagName("*"); for (var i = aElement.length - 1; i >= 0; i--) { if(aElement[i].className == className){ result.push(aElement[i]); } } return result; }完整例程如下
<!DOCTYPE html> <html> <head> <title>learn js</title> <style type="text/css"> </style> <script type="text/javascript"> function getByClass(oParent,className){ var result = []; var aElement = oParent.getElementsByTagName("*"); for (var i = aElement.length - 1; i >= 0; i--) { if(aElement[i].className == className){ result.push(aElement[i]); } } return result; } window.onload = function(){ var oUl = document.getElementById('ul1'); var aLi = getByClass(oUl,'box'); for (var i = aLi.length - 1; i >= 0; i--) { aLi[i].style.backgroundColor = 'red'; } }; </script> </head> <body> <ul id="ul1"> <li>1</li> <li class="box">2</li> <li>3</li> <li class="box">4</li> <li>5</li> <li class="box">6</li> <li>7</li> <li class="box">8</li> </ul> </body> </html>


浙公网安备 33010602011771号