hanyuxuan
 1 <!DOCTYPE html>
 2 <html>
 3     <head>
 4         <meta charset="UTF-8">
 5         <title>通过className获取元素的方法</title>
 6         <style type="text/css">
 7             #box1{
 8                 display: flex;
 9                 width: 200px;
10                 height: 200px;
11                 border: 1px red solid;
12                 flex-flow: row wrap;
13                 justify-content: space-between;
14                 align-items: center;
15             }
16             div[class ^= item]{
17                 width: 50px;
18                 height: 50px;
19                 border: 1px green solid;
20             }
21         </style>
22         <script type="text/javascript">
23             window.onload = function(){
24                 //思路:
25                 /*
26                  * 1、先获取元素集合--->通过要获取元素的tagName找到元素集合
27                  * 2、将每个元素的className分割为数组,并遍历该数组
28                  * 3、判断className数组中是否含有对应的要查找的className,并把找的的元素存到另一个数组中
29                  * 4、返回这个数组。
30                  * 
31                  */
32                 var oDiv = document.getElementById(\'box1\');
33                 
34                 console.log(getElementByClassName(document,\'div\',\'item2\'));
35                 
36                 function getElementByClassName(parentEle,tagName,_className){
37                     var aEles = parentEle.getElementsByTagName(tagName);
38                     var aClassName = [];
39                     var arr = [];//存放找到的元素
40                     for(var i = 0; i < aEles.length; i++){
41                         aClassName = aEles[i].className.split(\' \');
42                         for(var j = 0; j<aClassName.length; j++){
43                             if(aClassName[j] == _className){
44                                 arr.push(aEles[i]);
45                                 break;
46                             }
47                         }
48                     }
49                     return arr;
50                 }
51             };
52         </script>
53     </head>
54     <body>
55         <div id="box1" class="item">
56             <div class="item1">
57                 
58             </div>
59             <div class="item2">
60                 
61             </div>
62             <div class="item2">
63                 
64             </div>
65             <div class="item3 item4">
66                 
67             </div>
68         </div>
69     </body>
70 </html>

 

分类:

技术点:

相关文章: