js通过元素的class属性获取元素

我心飞翔 分类:实例代码

lass属性是dom最为常用的属性之一,可以通过它设置元素的样式属性。

如果可以通过class属性获取元素,那么将是一种非常便利的手段,当然原生的js也提供了这样的方法:

getElementsByClassName

但是此方法不兼容低版本的IE浏览器,下面就分享一段能够兼容所有浏览器的代码实例。

此功能在本站的其他章节也介绍过,比如getElementsByClassName()用法详解一章节。

这里只是再提供一段代码实例,或许有不同的实现思路。

代码实例如下:

<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.pipipi.net/" />
<title>前端教程网</title>
<script>
function getClass(node,classname) { 
  if(node.getElementsByClassName) {
    return node.getElementsByClassName(classname);
  } 
  else {
    var elems = node.getElementsByTagName(node),
    defualt = [];
    for (var i = 0; i < elems.length; i++) {
      if(elems<i>.className.indexOf(classname) != -1) {
        defualt[defualt.length] = elems<i>;
      }
    }
    return defualt;
  }
}
window.onload=function(){
  var odiv=document.getElementById('box'),
  elements=getClass(odiv,'antzone');
  elements[0].innerHTML='前端教程网';
}
 </script>
</head>
<body>
 <div id="box">
   <div class="antzone">textcss</div>
 </div>
</body>
</html></i></i>

回复

我来回复
  • 暂无回复内容