JavaScript实现一个空中避难的小游戏
网络编程 2021-07-04 18:32www.168986.cn编程入门
最近利用Javascript实现了一个小游戏,觉着还不错,所以分享给大家,狼蚁网站SEO优化这篇文章主要给大家介绍了利用JavaScript实现一个空中避难的小游戏的相关资料,文中给出了完整的示例代码供大家参考学习,需要的朋友们狼蚁网站SEO优化来一起看看吧。
前言
最近在看js中的事件,之前也一直有用到事件,用到最多的就是onclick单击事件,还有填写表单信息时的用到的onfocus聚焦时间,和onblur事件,最近看到了onmousemove鼠标移动事件,觉得很神奇,就突然很想写一个小游戏,用到了setInterval函数。游戏的功能也很简单,就是天上掉纸片,小人儿要不停的躲,一旦纸片和小人儿相撞,就会game over!
代码如下:
<!DOCTYPE html> <html> <head> <style> .move { margin-: 0px; width:40px; height: 50px; background: #ff0; position:absolute; z-index: 999; } .self { width:40px; height: 50px; background: #f0f; position:absolute; margin-: 600px; margin-left: 643px; z-index: 999; } .self img { width:40px; height: 50px; border-radius: 20px; } </style> <title>图图up up</title> </head> <body onload="moveDiv()"> <!--12个div就是空中的小纸片--> <div class="move" style="margin-left:100px"> </div> <div class="move" style="margin-left:200px"> </div> <div class="move" style="margin-left:300px"> </div> <div class="move" style="margin-left:400px"> </div> <div class="move" style="margin-left:500px"> </div> <div class="move" style="margin-left:600px"> </div> <div class="move" style="margin-left:700px"> </div> <div class="move" style="margin-left:800px"> </div> <div class="move" style="margin-left:900px"> </div> <div class="move" style="margin-left:1000px"> </div> <div class="move" style="margin-left:1100px"> </div> <div class="move" style="margin-left:1200px"> </div> <!--小人儿用一张图片代替--> <div id="self" class="self"> <img src="images/tutu.jpg"> </div> </body> <script type="text/javascript"> var alldiv = document.querySelectorAll('.move'); var selfdiv = document.getElementById("self"); var timer, flag; function moveItem() { //用随机数决定哪一张纸片掉落 for (var j = 0; j < Math.round(Math.random()*11); j++) { var i = Math.round(Math.random()*11); alldiv[i].style. = alldiv[i].offsetTop + 20 +"px"; //掉落过程中改变纸片的颜色 var rgb='rgb('+Math.floor(Math.random()*255)+',' +Math.floor(Math.random()*255)+',' +Math.floor(Math.random()*255)+')'; alldiv[i].style.backgroundColor = rgb; if (alldiv[i].offsetTop >= 600) { alldiv[i].style. = "50px"; //当纸片落到底部,又重新回到起点 } } } function moveDiv() { timer = setInterval(moveItem,20); //每隔20ms掉落 flag = setInterval(meeting,1); //间隔1ms判断是否相撞 } var selfdiv = document.getElementById("self"); selfdiv.onmousedown = function(e) //鼠标点击小人儿开始移动 { document.onmousemove = function(e) //小人儿跟着鼠标移动 { if (e.clientY > 600) { selfdiv.style.marginTop = "600px"; //如果到达屏幕底部就不再往下 } else if(e.clientX > 1300) { selfdiv.style.marginLeft = "1300px"; //到达最右部就回到不再往右 } else { //小人儿的位置始终等于鼠标的位置 selfdiv.style.marginTop = e.clientY + "px"; selfdiv.style.marginLeft = e.clientX + "px"; } } } function meeting() { for (var i = 0; i < alldiv.length; i++) { //判断是否相撞 if (Math.abs(alldiv[i].offsetTop-selfdiv.offsetTop) <= 50 && Math.abs(alldiv[i].offsetLeft-selfdiv.offsetLeft) <= 40) { clearInterval(flag); clearInterval(timer); alert("一不小心撞到了!!!游戏结束"); } } } </script> </html>
效果如图:
全部的代码就这些,动图做的效果不是很好,第一次做动图,发现有很多在线网站都可以,做起来很简单,还是免费的,开心!!!
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对狼蚁SEO的支持。
编程语言
- 机械手焊接机器人编程 机械手焊接设备编程
- vb数据库编程实例,vb做数据库
- tiobe世界编程语言排行榜,全球编程语言排行
- 成都java编程培训 成都it编程培训中心
- 编程基础培训,编程基础知识培训
- flash游戏编程基础教程,flash游戏开发教程
- 不会英语能学编程吗 不会英语可以学程序员吗
- 爱心代码编程C语言 爱心代码编程c语言公式
- c语言编程学习入门 c语言编程快速入门
- 西门子plc编程培训 西门子plc编程培训班
- 哪里可以学编程 台州哪里可以学编程
- 少儿编程哪个好 少儿编程哪个品牌好
- 编程是什么意思,图形编程是什么意思
- c语言编程软件下载,c语言编程软件在哪下载
- java编程软件下载,java编程下载手机版
- ug编程培训学校,ug编程培训教程