这个案例主要是练习for循环生成阵列。
通过定位在图片上方摆满多个div,鼠标经过div消失。
具体页面效果点击查看
一、html代码
<div id="wrap"> <!--<div class="box" style="left:0;top:0">0</div> <div class="box" style="left:50px;top:0">0</div> <div class="box" style="left:100px;top:0">0</div> <div class="box" style="left:150px;top:0">0</div> <div class="box" style="left:0;top:50px">0</div> <div class="box" style="left:50px;top:50px">0</div> <div class="box" style="left:100px;top:50px">0</div> <div class="box" style="left:150px;top:50px">0</div>--> </div>
二、css代码
*{ box-sizing:border-box;} body{ margin:0; background-color:#000;} #wrap{ position:relative; width:600px; height:375px; margin:50px auto; background:url(images/2.jpg) no-repeat;} .box{ position:absolute; width:75px; height:75px; background:#F77128; text-align:center; line-height:40px; color:#fff; border:1px solid #fff; opacity:.9; transition:0.5s ease-out; }
三、js代码
window.onload=function(){ var oDiv=document.getElementById('wrap'); var oDivs=oDiv.getElementsByTagName('div'); for(var i=0;i<40;i++) oDiv.innerHTML+='<div class="box"></div>' for(var i=0;i<40;i++){ oDivs[i].style.left=(i%8)*75+"px";//一行8个对象,每8个换一行。 //Math.floor()向下取整数.每一行的8个对象top值是一样的。 oDivs[i].style.top=Math.floor(i/8)*75+"px"; } for(var i=0;i<oDivs.length;i++){ oDivs[i].onmouseover=function(){ this.style.transform='rotate(360deg) scale(0)'; this.style.opacity=0; } } }
案例下载地址:
链接: https://pan.baidu.com/s/19kzkzBN_nRsJQYyLyZDcaQ 提取码: g2u6
发表评论:
◎请发表你卖萌撒娇或一针见血的评论,严禁小广告。