您的位置:首页 > 其它

getElementsByClassName的用法 和 …

2013-12-25 14:40 399 查看
因为IE浏览器不支持getElementsByClassName,所以你要自己写一个方法得到class

但是火狐浏览器知道getElementsByClassName,可以直接的用

 

<html>

<head>

   
<title></title>

   
<script type="text/javascript">

       
window.onload = function () {

           var tagName = getClass("div",
"a1");

          //因为返回的是包含多个元素的数组,所以要遍历一下
           for (var
i = 0; i < tagName.length; i++)


               
tagName[i].innerHTML = "你好";

           
}

           

           var tagName = getClass("div",
"a2");

           for (var
i = 0; i < tagName.length; i++) {

               
tagName[i].innerHTML = "ALL好";

           
}

       
}

       function getClass(tagname, className)
{ //tagname指元素,className指class的值

       
 //判断浏览器是否支持getElementsByClassName,如果支持就直接的用
           if (document.getElementsByClassName)
{   

               return
getElementsByClassName(className);

           
}

           else
{   //当浏览器不支持getElementsByClassName的时候用下面的方法
               var tagname =
document.getElementsByTagName_r(tagname); //获取指定元素
               var tagnameAll =
[];    //这个数组用于存储所有符合条件的元素
               for (var
i = 0; i < tagname.length; i++)
{    //遍历获得的元素
                   
if (tagname[i].className == className)
{    //如果获得的元素中的class的值等于指定的类名,就赋值给tagnameAll
                       
tagnameAll[tagnameAll.length] = tagname[i];

                   
}

               
}

               return tagnameAll;

           
}

       
}

   
</script>

</head>

<body>

<div
class="a1"></div>

<div
class="a1"></div>

<div
class="a1"></div>

<div
class="a1"></div>

<div
class="a2"></div>

<div
class="a2"></div>

<div
class="a2"></div>

<div
class="a2"></div>

</body>

</html>

我建议不要用上面的方法,用JQuery,可以省去很多的代码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: