获取标签的所有选择器存放在一个数组

1.引入jQuery

 <script src="https://cdn.jsdelivr.net/npm/jquery@3.4.1/dist/jquery.min.js"></script>

将上面这段代码引入html。

 

2.写一个方法

 function $selector(tag){
     var el=$(tag).toArray();
     var els=el.map(function(element,index){
     var obj={}
     if(element.className&&element.id){
         obj.id=`#${element.id}`;
         obj.class=`.${element.className.replace(/ /g,',.')}`.split(',');
         return obj;
     }
     else if(element.className){
         obj.class=`.${element.className}`;
         obj.id=undefined;
         return obj;
     }
     else if(element.id){
         obj.id=`.${element.id}`;
         obj.class=undefined;
         return obj;
     }
     });
     return els;
 }

3.调用该方法

通过$seleclor('标签名')使用该方法。

例如:

1 $selector('div');        //获取页面所有div的选择器,每个div的id和class选择器会分开存放
2     
3 $selector('p');          //获取页面所有p标签的选择器
4 
5 $selector('a');          //获取页面所有a标签的选择器        

控制台实现效果图:

作者: 听见下雨声
本文版权归作者和博客园共有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/stardreams/p/12551587.html