<!doctype html> <html> <head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> div { width: 50px; height: 50px; background: red; position: absolute; top:0; left: 0; font-size: 30px; text-align: center; line-height: 50px; color: #fff; } </style> <script> window.onload = function () { var aDiv = document.getElementsByTagName('div'); var str =''; //批量创建div for (var i = 0; i < 31; i++) { str +='<div>'+i+'</div>'; alert(str); }; //alert(str); //坐标设置 for (var i = 0; i < aDiv.length; i++) { //间隔10px同行排列 aDiv[i].style.left = 10+i*60 + 'px'; //逢10个换行 for (j=1;i>=10*j;j++) { aDiv[i].style.top = j*60+'px'; aDiv[i].style.left = 10+(i-j*10)*60 + 'px'; } ; //阶梯状排列 //aDiv[i].style.left = 10+i*50 + 'px'; //aDiv[i].style.top = 10+i*50 + 'px'; //“V”字型排列 //aDiv[i].style.left = 10+i*50 + 'px'; //if (i<aDiv.length/2) { // aDiv[i].style.top = 10+i*50 + 'px'; //} else{ // aDiv[i].style.top = 10+(aDiv.length-1-i)*50 + 'px'; //}; }; document.body.innerHTML = str; } </script> </head> <body> </body> </html>
为什么我只要定义了str ,就只能出最后一个div方块;如果直接用document.body.innerHTML 就能出现正确的效果。
还有给div数组的长度定义 len,也会出问题。是哪里有冲突吗?视频里也没有做其他设置呀。
nickylau82
相关分类