首页 > 其他 > 详细

元素操作类

时间:2020-06-05 19:28:33      阅读:39      评论:0      收藏:0      [点我收藏+]
  1         class Ele{
  2             constructor(){
  3                 
  4             }
  5             removeEle(obj){
  6                 obj.parentNode.removeChild(obj);
  7             }
  8             createEle(obj){
  9                 try{
 10                     var ele = document.createElement(obj.tag);
 11                     
 12                 if(obj.class)
 13                 {
 14                     ele.classList.add(obj.class);
 15                 }
 16                 if(obj.event && obj.evefun)
 17                 {
 18                     ele.addEventListener(obj.event,obj.evefun,true);
 19                 }
 20                 if(obj.attrs)
 21                 {
 22                     this.loops(obj.attrs,function(item,key,index){
 23                         ele.setAttribute(key,item);
 24                     })  
 25                 }
 26                 if(obj.text)
 27                 {
 28                     ele.innerText=obj.text;
 29                 }
 30                 return ele;
 31                 }catch(err){
 32                     alert(err);
 33                     return false;
 34                 }
 35                 
 36             }
 37             
 38             loops(obj,back){
 39                 let i = 0;
 40                 let arr = [];
 41                 for(let key  in obj)
 42                 {
 43                     arr.push(back(obj[key],key,i));
 44                     i++;
 45                 }
 46                 return arr;
 47             }
 48 
 49             nesting(parent,eles={}){
 50                 var that=this;
 51                 this.loops(eles,function(item,key,index){
 52                     if(item instanceof Object)
 53                     {                        
 54                         var elec=that.createEle({
 55                             "tag":key,
 56                         });
 57                         that.nesting(elec,item);
 58                         parent.appendChild(elec);
 59                     }
 60                     else{
 61                         var elec=that.createEle({
 62                             "tag":key,
 63                             "text":item,
 64                          });
 65                          parent.appendChild(elec);
 66                     }
 67                 });
 68             }
 69 
 70         }
 71         
 72         var a=new Ele();
 73         var ele=a.createEle({
 74             "tag":"div",
 75             "attrs":{
 76                 ‘class‘:"a b c d",
 77                 ‘style‘:‘width:300px;height:200px;background:#ccc;‘,
 78                 ‘id‘:"loadimg"
 79             }
 80         });
 81         document.body.appendChild(ele);
 82         var as=document.getElementById(‘a‘);
 83         // a.removeEle(ele);
 84         a.removeEle(as);
 85         var body=document.body;
 86         a.nesting(body,{
 87                     "a":{
 88                         ‘a1‘:"a11",
 89                         "a2":"a22",
 90                         "a3":"a33"
 91                         },
 92                     "b":{
 93                         ‘b1‘:"b11",
 94                         "b2":"b22",
 95                         "b3":"b33"
 96                         },
 97                     "c":{
 98                         ‘c1‘:"c11",
 99                         "c2":"c22",
100                         "c3":"c33"
101                         },
102                     "d":{
103                         ‘d1‘:"d11",
104                         "d2":"d22",
105                         "d3":"d33"
106                         },
107                     "e":{
108                         ‘e1‘:"e11",
109                         "e2":"e22",
110                         "e3":{
111                             "e31":"e31t",
112                             "e32":"e32t",
113                             "e33":"e33t"
114                             }
115                         },
116                 })

 

元素操作类

原文:https://www.cnblogs.com/huangcaijin/p/13051204.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!