用js制作接球小游戏

2023-11-22 21:10
文章标签 js 制作 小游戏 接球

本文主要是介绍用js制作接球小游戏,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.首先写出小球的样式

f {width: 1200px;height: 800px;border: 1px solid red;position: relative;}.z {width: 100px;height: 100px;border-radius: 50%;background-color: red;position: absolute;left: 550px;top: 350px;}

2.然后给出空间范围,让小球进行镜面运动

let r = Mazth.floor(Math.random() * 1200)console.log(r)let x = 600, y = 4300let x_y = (x - r) / (y - 50)let dy = -1let dx = x_y * dylet ball = document.getElementById('ball')function startGame() {setInterval(() => {if (y <= 50 || y >= 750) {dy = -dy}if (x <= 50 || x >= 1150) {dx = -dx}x += dxy += dyball.style.left = x - 50 + 'px'ball.style.top = y - 50 + 'px'ball.style.outline=title('')}, 0.1);}

3.最后的效果就是这样的

然后可以用键盘控制小球的运动,代码如下:

 let dy=10;//按一次键盘,y轴移动的距离let dx=10;//按一次键盘,y轴移动的距离let x1=0,y1=0function start1(){let img1=document.getElementById('img1')//2.感知键盘 keyCode:下40 右39 上38 左37document.οnkeydοwn=function(e){console.log(e.keyCode)switch(e.keyCode){case 40:console.log('下')y1+=dyimg1.style.top=y1+'px'break;case 39:console.log('右')x1+=dximg1.style.left=x1+'px'break;case 38:console.log('上')y1-=dyimg1.style.top=y1+'px'break;case 37:console.log('左')x1-=dximg1.style.left=x1+'px'break;}}}let x2=250,y2=0function start2(){let img2=document.getElementById('img2')//2.感知键盘 keyCode:下40 右39 上38 左37document.οnkeydοwn=function(e){console.log(e.keyCode)switch(e.keyCode){case 40:console.log('下')y2+=dyimg2.style.top=y2+'px'break;case 39:console.log('右')x2+=dximg2.style.left=x2+'px'break;case 38:console.log('上')y2-=dyimg2.style.top=y2+'px'break;case 37:console.log('左')x2-=dximg2.style.left=x2+'px'break;}}}let x3=500,y3=0function start3(){let img3=document.getElementById('img3')//2.感知键盘 keyCode:下40 右39 上38 左37document.οnkeydοwn=function(e){console.log(e.keyCode)switch(e.keyCode){case 40:console.log('下')y3+=dyimg3.style.top=y3+'px'break;case 39:console.log('右')x3+=dximg3.style.left=x3+'px'break;case 38:console.log('上')y3-=dyimg3.style.top=y3+'px'break;case 37:console.log('左')x3-=dximg3.style.left=x3+'px'break;}}}let x4=750,y4=0function start4(){let img4=document.getElementById('img4')//2.感知键盘 keyCode:下40 右39 上38 左37document.οnkeydοwn=function(e){console.log(e.keyCode)switch(e.keyCode){case 40:console.log('下')y4+=dyimg4.style.top=y4+'px'break;case 39:console.log('右')x4+=dximg4.style.left=x4+'px'break;case 38:console.log('上')y4-=dyimg4.style.top=y4+'px'break;case 37:console.log('左')x4-=dximg4.style.left=x4+'px'break;}}}

这篇关于用js制作接球小游戏的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/412926

相关文章

Node.js 中 http 模块的深度剖析与实战应用小结

《Node.js中http模块的深度剖析与实战应用小结》本文详细介绍了Node.js中的http模块,从创建HTTP服务器、处理请求与响应,到获取请求参数,每个环节都通过代码示例进行解析,旨在帮... 目录Node.js 中 http 模块的深度剖析与实战应用一、引言二、创建 HTTP 服务器:基石搭建(一

使用Python制作一个PDF批量加密工具

《使用Python制作一个PDF批量加密工具》PDF批量加密‌是一种保护PDF文件安全性的方法,通过为多个PDF文件设置相同的密码,防止未经授权的用户访问这些文件,下面我们来看看如何使用Python制... 目录1.简介2.运行效果3.相关源码1.简介一个python写的PDF批量加密工具。PDF批量加密

使用Vue.js报错:ReferenceError: “Vue is not defined“ 的原因与解决方案

《使用Vue.js报错:ReferenceError:“Vueisnotdefined“的原因与解决方案》在前端开发中,ReferenceError:Vueisnotdefined是一个常见... 目录一、错误描述二、错误成因分析三、解决方案1. 检查 vue.js 的引入方式2. 验证 npm 安装3.

JS常用组件收集

收集了一些平时遇到的前端比较优秀的组件,方便以后开发的时候查找!!! 函数工具: Lodash 页面固定: stickUp、jQuery.Pin 轮播: unslider、swiper 开关: switch 复选框: icheck 气泡: grumble 隐藏元素: Headroom

在JS中的设计模式的单例模式、策略模式、代理模式、原型模式浅讲

1. 单例模式(Singleton Pattern) 确保一个类只有一个实例,并提供一个全局访问点。 示例代码: class Singleton {constructor() {if (Singleton.instance) {return Singleton.instance;}Singleton.instance = this;this.data = [];}addData(value)

Node.js学习记录(二)

目录 一、express 1、初识express 2、安装express 3、创建并启动web服务器 4、监听 GET&POST 请求、响应内容给客户端 5、获取URL中携带的查询参数 6、获取URL中动态参数 7、静态资源托管 二、工具nodemon 三、express路由 1、express中路由 2、路由的匹配 3、路由模块化 4、路由模块添加前缀 四、中间件

EasyPlayer.js网页H5 Web js播放器能力合集

最近遇到一个需求,要求做一款播放器,发现能力上跟EasyPlayer.js基本一致,满足要求: 需求 功性能 分类 需求描述 功能 预览 分屏模式 单分屏(单屏/全屏) 多分屏(2*2) 多分屏(3*3) 多分屏(4*4) 播放控制 播放(单个或全部) 暂停(暂停时展示最后一帧画面) 停止(单个或全部) 声音控制(开关/音量调节) 主辅码流切换 辅助功能 屏

用Unity2D制作一个人物,实现移动、跳起、人物静止和动起来时的动画:中(人物移动、跳起、静止动作)

上回我们学到创建一个地形和一个人物,今天我们实现一下人物实现移动和跳起,依次点击,我们准备创建一个C#文件 创建好我们点击进去,就会跳转到我们的Vision Studio,然后输入这些代码 using UnityEngine;public class Move : MonoBehaviour // 定义一个名为Move的类,继承自MonoBehaviour{private Rigidbo

使用JS/Jquery获得父窗口的几个方法(笔记)

<pre name="code" class="javascript">取父窗口的元素方法:$(selector, window.parent.document);那么你取父窗口的父窗口的元素就可以用:$(selector, window.parent.parent.document);如题: $(selector, window.top.document);//获得顶级窗口里面的元素 $(

js异步提交form表单的解决方案

1.定义异步提交表单的方法 (通用方法) /*** 异步提交form表单* @param options {form:form表单元素,success:执行成功后处理函数}* <span style="color:#ff0000;"><strong>@注意 后台接收参数要解码否则中文会导致乱码 如:URLDecoder.decode(param,"UTF-8")</strong></span>