javascript实实现现打打砖砖块块小小游游戏戏 ((附附完完整整源源码码))

小时候玩一天的打砖块小游戏,附完整源码

在?给个赞?

实实现现如如图图

需需求求 析析

1、小球在触碰到大盒子上、左、右边框,以及滑块后沿另一方向反弹,在碰到底边框后游戏结束;

2、小球在触碰到方块之后,方块消失;

3、消除所有方块获得游戏胜利;

4、可通过鼠标与键盘两种方式移动滑块;

5、游戏难度可调整,实时显示得 。

代代码码 析析

1、html结构:左右两个提示框盒子 别用一个div,在其中添加需要的内容;中间主体部 用一个div,里面包含一个滑块 (slid

er),一个小球 (ball),以及一个装有所有方块的brick盒子,我们通过使用js在brick中动态添加方块,这样大大减少了div的数

量。简化了html结构。

2、css样式:通过使用position:relative/absolute/fixed,完成对整个页面的布局;

3、js行为:首先对于小球的运动,我们通过使用setInterval定时器进行实现;小球与滑块以及方块之间的碰撞,我们通过碰撞检

测函数进行实现;滑块的移动我们需要设置两种方法,通过鼠标实现可以使用拖拽;通过键盘实现使用键盘事件。

一一些些封封装装的的函函数数

动动态态创创建建方方块块

函数 析

1、首先,我们在id=“brick”的div盒子中动态插入n个方块,在css中预先为这些盒子设置了固定的宽高,并设置了左浮动布局。

这样,所有的方块就会按照自左到右自上而下排列在盒子中;但是通过浮动布局在中间某一个方块碰撞消失后,后面的方块会补

充上来,这并不是我们想要的;

2、为了防止后面的方块向前移动,显然我们不能使用浮动,在这里我们对每一个方块使用绝对定位;

3、在给每一个方块进行绝对定位之前,我们先要获取它们当前所在位置的left与top值,并赋给它们,否则方块将全部挤在一个

格子里;

4、最后再给每个方块进行绝对定位。

1 function createBrick(n){

2 var oBrick = document.getE ementById("brick")

3 //在大盒子brick中插入n个div方块,并给予随机颜色

4 for(var i = 0; i

5 var node = document.createE ement("div");

6 node.sty e.backgroundCo or= co or();

7 oBrick.appendChi d(node);

8 }

9 //获取所有的方块

10 var brickArr = obrick.getE ementsByTagName("div")

11 //根据每个方块当前所在位置,将 eft与top值赋给方块

12 for(var i=0;i

13 brickArr[i].sty e. eft = brickArr[i].offsetLeft+"px";

14 brickArr[i].sty e.top = brickArr[i].offsetTop+"px";

15 }

16 //将所有方块设置成绝对定位,注意这一步与上一步顺序不能调换

17 for(var i =0;i

18 brickArr[i].sty e.position="abso ute";

19 }

20 }

碰碰撞撞检检测测函函数数

代码 析见上一篇

1 function knock(node1,node2){

2 var 1 = node1.offsetLeft;

3 var r1 = node1.offsetLeft + node1.offsetWidth;

4 var t1 = node1.offsetTop;

5 var b1 = node1.offsetTop+node1.offsetHeight;

6 var 2 = node2.offsetLeft;

7 var r2 = node2.offsetLeft + node2.offsetWi

html打砖块小游戏源代码,javascript实现打砖块小游戏(附完整源码).pdf相关推荐

  1. JavaScript实现regular-expression-matching正则表达式匹配算法(附完整源码)

    JavaScript实现regular-expression-matching正则表达式匹配算法(附完整源码) regularExpressionMatching.js完整源代码 regularExp ...

  2. JavaScript实现hammingDistance汉明距离算法(附完整源码)

    JavaScript实现hammingDistance汉明距离算法(附完整源码) hammingDistance.js完整源代码 hammingDistance.js完整源代码 export defa ...

  3. JavaScript实现RadixSort基数排序算法(附完整源码)

    JavaScript实现RadixSort基数排序算法(附完整源码) Comparator.js完整源代码 Sort.js完整源代码 RadixSort.js完整源代码 Comparator.js完整 ...

  4. JavaScript实现QuickSort快速排序算法(附完整源码)

    JavaScript实现QuickSort快速排序算法(附完整源码) Comparator.js完整源代码 Sort.js完整源代码 QuickSort .js完整源代码 Comparator.js完 ...

  5. JavaScript实现MergeSort归并排序算法(附完整源码)

    JavaScript实现MergeSort归并排序算法(附完整源码) Comparator.js完整源代码 Sort.js完整源代码 MergeSort.js完整源代码 Comparator.js完整 ...

  6. JavaScript实现InsertionSort插入排序算法(附完整源码)

    JavaScript实现InsertionSort插入排序算法(附完整源码) Comparator.js完整源代码 Sort.js完整源代码 InsertionSort.js完整源代码 Compara ...

  7. JavaScript实现heapsort堆排序算法(附完整源码)

    JavaScript实现heapsort堆排序算法(附完整源码) Heap.js完整源代码 MinHeap.js完整源代码 Comparator.js完整源代码 Sort.js完整源代码 HeapSo ...

  8. JavaScript实现combinationSum组合和算法(附完整源码)

    JavaScript实现combinationSum组合和算法(附完整源码) combinationSum.js完整源代码 combinationSum.test.js完整源代码 combinatio ...

  9. JavaScript实现squareRoot平方根算法(附完整源码)

    JavaScript实现squareRoot平方根算法(附完整源码) squareRoot.js完整源代码 squareRoot.test.js完整源代码 squareRoot.js完整源代码 exp ...

  10. JavaScript实现计算π值算法(附完整源码)

    JavaScript实现计算π值算法(附完整源码) π.js完整源代码 π.js完整源代码 const circleRadius = 1; function getNGonSideLength(sid ...

最新文章

  1. python for循环删除
  2. CTSC 2018 游记
  3. java例程练习(批量修改文件后缀名)
  4. 织梦内容管理系统(DedeCMS)
  5. SQL联合查询:子表任一记录与主表联合查询
  6. 《Two Dozen Short Lessons in Haskell》(二十)分数
  7. 面试官:聊一下二分法
  8. 学习编程的过程中可能会走哪些弯路,有哪些经验可以参考?
  9. 关于HTML和CSS
  10. jquery中animate()函数不能调用元素的display属性
  11. Flink + Iceberg,百亿级实时数据入湖实战
  12. 码云git上传下载代码
  13. 博弈论(取石子专题)
  14. 十套精美个人博客网站模板
  15. 1001系列之案例0003如何对欧洲人口普查数据集整理挖掘
  16. Node.js meitulu图片批量下载爬虫1.02版
  17. k8s之ovs-cni
  18. android+隐藏邮件地址,“通过 Apple 登录”功能的“隐藏邮件地址”
  19. 区块链溯源是什么?一文带您读懂!
  20. vue实现刷新页面随机切换背景图【适用于登陆界面】

热门文章

  1. Debian下解决subclise插件在启动时报fail to load JavaHL Liberary
  2. 中文字体font-family常用列表
  3. ##智能优化算法复习--免疫算法IA
  4. 《图书管理系统》毕业论文
  5. 项目申请html模板,做项目申请报告范文-有模板
  6. mysql sjis 校对乱码_MySQL乱码问题深层分析
  7. cuda 镜像_AMDamp;Intel双平台黑苹果镜像安装包Catalina 10.15.0(19A583)加强版
  8. 精通反激电源变压器及电路设计-自己的笔记
  9. VS2010入门教程
  10. 遗传算法及c++实现