码迷,mamicode.com
首页 > 其他好文 > 详细

练习题-1-DOM操作

时间:2018-03-31 00:49:01      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:gpo   ict   style   add   联通3g   ios   android   习题   click   

  1 <!DOCTYPE html>
  2 <html lang="en">
  3 <head>
  4     <meta charset="UTF-8">
  5     <title>dom-操作</title>
  6 </head>
  7 <style>
  8     body,ul,dl,dt,dd{
  9         padding: 0;margin: 0;list-style: none;
 10     }
 11     #wrap{
 12         width: 900px;
 13         height: 400px;
 14         background: linear-gradient(to right bottom,#21ffff,#ce6584);
 15         position: absolute;
 16         left: 0;
 17         top: 0;
 18         bottom: 0;
 19         right: 0;
 20         margin: auto;
 21         box-sizing: border-box;
 22         padding: 80px 0;
 23     }
 24     #content{
 25         width: 700px;
 26         height: 240px;
 27         background: rgba(255,255,255,0.5);
 28         margin: 0 auto;
 29     }
 30     #top-wrap{
 31         height: 50px;
 32         background: rgba(255,255,255,0.2);
 33     }
 34     .fl{
 35         float: left;
 36     }
 37     .fr{
 38         float: right;
 39     }
 40     .clearfix::after{
 41         content: "";
 42         display: block;
 43         height: 0;
 44         clear: both;
 45     }
 46     .top-l,.top-r{
 47         float: left;
 48         height: 100%;
 49         font-size: 14px;
 50     }
 51     .top-l{
 52         width: 100px;
 53         line-height: 50px;
 54         text-align: center;
 55     }
 56     .top-r{
 57         width: calc(100% - 100px);
 58         padding: 11px 0;
 59         box-sizing: border-box;
 60     }
 61     .top-r li{
 62         border: 2px solid #10aaff;
 63         height: 24px;
 64         line-height: 24px;
 65         float: left;
 66         padding: 0 5px;
 67         margin-right: 5px;
 68         display: none;
 69     }
 70     .details{
 71         padding: 0 5px;
 72         color: #10aaff;
 73     }
 74     .close{
 75         padding: 0 5px;
 76         color: #fff;
 77         background: #10aaff;
 78         cursor: pointer;
 79     }
 80     dl{
 81         height: 40px;
 82         line-height: 40px;
 83         font-size: 14px;
 84     }
 85     dt{
 86         padding-right:20px;
 87         color: #848a8c;
 88     }
 89     dl dd{
 90         float: left;
 91         margin-right: 20px;
 92         color: #181818;
 93         cursor: pointer;
 94     }
 95     #inof-wrap{
 96         padding: 15px 20px;
 97         box-sizing: border-box;
 98         background: rgba(255,255,255,0.6);
 99     }
100     #inof-wrap dl:first-child{
101         border-bottom: 1px dashed #5acbd6;
102     }
103     #inof-wrap dl:nth-child(3){
104         border-bottom: 1px dashed #5acbd6;
105         border-top: 1px dashed #5acbd6;
106     }
107     .active{
108         color: #10aaff;
109     }
110 </style>
111 <body>
112     <div id="wrap">
113         <div id="content">
114             <div id="top-wrap">
115                 <div class="top-l">你的选择:</div>
116                 <ul class="top-r">
117                     <li><span class="details">苹果</span><span class="close">×</span></li>
118                     <li><span class="details">3.0英寸以下</span><span class="close">×</span></li>
119                     <li><span class="details">安卓(Android)</span><span class="close">×</span></li>
120                     <li><span class="details">联通3G</span><span class="close">×</span></li>
121                 </ul>
122             </div>
123             <div id="inof-wrap">
124                 <dl>
125                     <dt class="fl">品牌:</dt>
126                     <dd>苹果</dd>
127                     <dd>小米</dd>
128                     <dd>锤子</dd>
129                     <dd>魅族</dd>
130                     <dd>华为</dd>
131                     <dd>OPPO</dd>
132                     <dd>vivo</dd>
133                     <dd>乐视</dd>
134                     <dd>360</dd>
135                     <dd>中兴</dd>
136                     <dd>索尼</dd>
137                 </dl>
138                 <dl>
139                     <dt class="fl">尺寸:</dt>
140                     <dd>3.0英寸以下</dd>
141                     <dd>3.0-3.9英寸</dd>
142                     <dd>4.0-4.5英寸</dd>
143                     <dd>4.6-4.9英寸</dd>
144                     <dd>5.0-5.5英寸</dd>
145                     <dd>6.0英寸以上</dd>
146                 </dl>
147                 <dl>
148                     <dt class="fl">系统:</dt>
149                     <dd>安卓(Android)</dd>
150                     <dd>苹果(IOS)</dd>
151                     <dd>微软(WindowsPhone)</dd>
152                     <dd></dd>
153                     <dd>其他</dd>
154                 </dl>
155                 <dl>
156                     <dt class="fl">网络:</dt>
157                     <dd>联通3G</dd>
158                     <dd>双卡单4G</dd>
159                     <dd>双卡双4G</dd>
160                     <dd>联通4G</dd>
161                     <dd>电信4G</dd>
162                     <dd>移动4G</dd>
163                 </dl>
164             </div>
165         </div>
166     </div>
167 </body>
168  <script>
169      "use strict";
170      let aLi=document.querySelectorAll(.top-r li);
171      let aClose=document.querySelectorAll(.top-r .close);
172      let aDl=document.querySelectorAll(#inof-wrap dl);
173      let aDd=document.querySelectorAll(#inof-wrap dl dd);
174      for(let i=0;i<aDd.length;i++){
175          aDd[i].onclick=function(){
176              if(this.getAttribute("class")!=="active" && !this.parentNode.querySelector(.active)){
177                  this.className="active";
178              }else{
179                  this.parentNode.querySelector(.active).className="";
180                  this.className="active";
181              }
182              let parentName=this.parentNode.querySelector(.fl).innerHTML;
183              if(parentName=="品牌:"){
184                  aLi[0].style.display="block";
185                  aLi[0].querySelector(.details).innerHTML=this.innerHTML;
186              }else if(parentName=="尺寸:"){
187                  aLi[1].style.display="block";
188                  aLi[1].querySelector(.details).innerHTML=this.innerHTML;
189              }else if(parentName=="系统:"){
190                  aLi[2].style.display="block";
191                  aLi[2].querySelector(.details).innerHTML=this.innerHTML;
192              }else{
193                  aLi[3].style.display="block";
194                  aLi[3].querySelector(.details).innerHTML=this.innerHTML;
195              }
196          }
197      }
198      for(let i=0;i<aClose.length;i++){
199          aClose[i].index=i;
200          aClose[i].onclick=function(){
201              this.parentNode.querySelector(.details).innerHTML=‘‘;
202              this.parentNode.style.display=none;
203              aDl[this.index].querySelector(.active).className="";
204          }
205      }
206  </script>
207 </html>

 

练习题-1-DOM操作

标签:gpo   ict   style   add   联通3g   ios   android   习题   click   

原文地址:https://www.cnblogs.com/studyshufei/p/8679100.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!