发表于: 2017-01-19 17:19:39
1 1415
今天开始在修真院做任务,之前学了css(没在修真院),和一些js基础知识.
今天的收获:
1学习了DOM操作节点的方法 createElement appendChild insertBefore
并做了一个类似qq说说发消息的小网页巩固了一下相关知识,期间查找学习了一些关于
用js来改变控制css代码以及伪类:before,:after的content属性的方法(content: attr()).
2上网看了关于原型链,prototype的相关知识的视频教程看完快睡着了..就去做js任务1
3查找了一下制造随机数的知识,做完了任务1
虽然效果基本达到了,但是感觉有点小问题:获得随机不重复数字采用的方法有点复杂,但暂时没有找到更好的办法,代码效率不高,也不太通用.
明天的计划:继续熟悉其他DOM操作节点的方法和事件,看看任务2.
然后,因为是第一次做任务写日报,很多地方不太明白,也不知道怎么上传代码,还是也可以复制到日报里面?暂时先贴在这里吧.任务1的代码..希望得到指正!
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<style type="text/css">
#container{
margin: auto;
position: absolute;
width: 330px;
height: 330px;
top:0;
left:0;
right:0;
bottom:0;
}
.div1{
width:100px;
height:100px;
margin-right:5px;
margin-bottom: 5px;
background: orange;
float: left;
border-radius: 5px;
}
button{
width: 50px;
height: 30px;
background: pink;
border: #fff;
border-radius: 3px;
}
.button{
position: absolute;
left:150px;
bottom: -50px;
}
</style>
</head>
<body>
<div id="container">
<div class="div1"></div>
<div class="div1"></div>
<div class="div1"></div>
<div class="div1"></div>
<div class="div1"></div>
<div class="div1"></div>
<div class="div1"></div>
<div class="div1"></div>
<div class="div1"></div>
<div class="button">
<button id="ch" onclick="ch()">随机</button>
<button id="reset" onclick="fy()">复原</button>
</div>
</div>
<script type="text/javascript">
var num=[]; //随机三个0~8的不重复数字
var con=document.getElementById('container');
var div1=con.getElementsByTagName('div')
var stop;
function getnum(){
for(var i=0;i<3;i++){ //方法有点笨..
switch(i){
case 0: num[0]=Math.floor(Math.random()*9);break;
case 1: num[1]=Math.floor(Math.random()*9);
if(num[1]==num[0]){
i=i-1;
}
break;
case 2: num[2]=Math.floor(Math.random()*9);
if(num[2]==num[0]||num[1]==num[2]){
i=i-1;
}
break;
}
}
//检测随机数字是否符合条件 console.log(num);
}
function getcolor(){ //随机一个颜色
var color=['0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'];
var c2='';
for(var i=1;i<7;i++){
var c1= color[Math.floor(Math.random()*16)];
c2+=c1;
}
return '#'+c2
}
//[0]~[8]是变色区域
function ch(){
function ch1(){ //获得三个随机颜色给三个随机不重复的方块
for(var i=0;i<9;i++){
div1[i].style.background='orange'; //每次执行之前先还原颜色
}
getnum()
div1[num[0]].style.background=getcolor();
div1[num[1]].style.background=getcolor();
div1[num[2]].style.background=getcolor();
}
ch1();
stop=setInterval(ch1,1000);
}
function fy(){ //复原9个方块的颜色
clearInterval(stop); //先清除计时器
for(var i=0;i<9;i++){
div1[i].style.background='orange';
}
}
</script>
</body>
</html>
评论