575day(方向键控制的行走的小人.html)

小实操(3): 利用键盘事件实现小人快跑 ** 实例: 利用html表单和js的数学对象及函数做一个有验证码的简单登录表单 实操:利用日期对象和方法以及其他相关知识实现简单的钟表功能 。。。。。。。 js学习中的小实操(目录) **         今天也是学习的一天,学习了知识之后,使用才能加深我们的记忆,今天做的是一个简单的实际操作,就是利用键盘事件实现小人快跑。 **        关注小文我们一起学 阅读详情

《2019年5月3日》【连续 575天】

标题:方向键控制的行走的小人.html;
内容:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        canvas {
            border: 1px solid #ccc;
        }
    </style>
</head>
<body>
<canvas width="600" height="400"></canvas>
<script>

    var Person = function (ctx) {
        /*绘制工具*/
        this.ctx = ctx || document.querySelector('canvas').getContext('2d');
        /*图片路径*/
        this.src = 'image/04.png';
        /*画布的大小*/
        this.canvasWidth = this.ctx.canvas.width;
        this.canvasHeight = this.ctx.canvas.height;

        /*行走相关参数*/
        this.stepSzie = 10;
        /* 0 前  1 左  2 右  3 后  和图片的行数包含的图片对应上*/
        this.direction = 0;
        /*x轴方向的偏移步数*/
        this.stepX = 0;
        /*y轴方向的偏移步数*/
        this.stepY = 0;

        /*初始化方法*/
        this.init();
    };

    Person.prototype.init = function () {
        var that = this;
        /*1.加载图片*/
        this.loadImage(function (image) {
            /*图片的大小*/
            that.imageWidth = image.width;
            that.imageHeight = image.height;
            /*人物的大小*/
            that.personWidth = that.imageWidth / 4;
            that.personHeight = that.imageHeight / 4;
            /*绘制图片的起点*/
            that.x0 = that.canvasWidth / 2 - that.personWidth / 2;
            that.y0 = that.canvasHeight / 2 - that.personHeight / 2;
            /*2.默认绘制在中心位置正面朝外*/
            that.ctx.drawImage(image,
                0,0,
                that.personWidth,that.personHeight,
                that.x0,that.y0,
                that.personWidth,that.personHeight);

            /*3.能通过方向键去控制人物行走*/
            that.index = 0;
            document.onkeydown = function (e) {
                if(e.keyCode == 40){
                    that.direction = 0;
                    that.stepY ++;
                    that.drawImage(image);
                    /*前*/
                }else if(e.keyCode == 37){
                    that.direction = 1;
                    that.stepX --;
                    that.drawImage(image);
                    /*左*/
                }else if(e.keyCode == 39){
                    that.direction = 2;
                    that.stepX ++;
                    that.drawImage(image);
                    /*右*/
                }else if(e.keyCode == 38){
                    that.direction = 3;
                    that.stepY --;
                    that.drawImage(image);
                    /*后*/
                }
            }
        });
    }
    /*加载图片*/
    Person.prototype.loadImage = function (callback) {
        var image = new Image();
        image.onload = function () {
            callback && callback(image);
        };
        image.src = this.src;
    };
    /*绘制图片*/
    Person.prototype.drawImage = function (image) {
        this.index ++;
        /*清除画布*/
        this.ctx.clearRect(0,0,this.canvasWidth,this.canvasHeight);
        /*绘图*/
        /*在精灵图上的定位 x  索引*/
        /*在精灵图上的定位 y  方向*/
        this.ctx.drawImage(image,
            this.index * this.personWidth,this.direction * this.personHeight,
            this.personWidth,this.personHeight,
            this.x0 + this.stepX * this.stepSzie ,this.y0 + this.stepY * this.stepSzie,
            this.personWidth,this.personHeight);
        /*如果索引超出了 变成0*/
        if(this.index >= 3){
            this.index = 0;
        }
    };


    new Person();

</script>
</body>
</html>

 

html5 人物行走 阅读详情

相关推荐

canvas绘制行走的小人

根据键盘上下左右控制小人行走的方向。 素材: 效果展示: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>行走的小人</title> <style> canvas { display: block; ...

qq_43537987的博客 1823

HTML5+CSS3+JavaScript 实现按键令小女孩移动,改变动画效果

即键盘松开时,消除动画,停止定时器,并且要改变小女孩的朝向(positionY)。不然会出现按了向下走,松开键盘时,小女孩的朝向立马变成了向上。动画就是从一个样式过渡到另一个样式,这里从坐标上可以看出来,从一个黄色框过渡到第二个,但是这样只是从图一平移到图四,并不能实现想要的逐帧动画效果。给小女孩绑定键盘按下事件,再根据键码判断上下左右来改变小女孩的朝向。按上述操作小女孩只是原地踏步,现在要来实现小女孩按朝向前进。重复代码有很多,要优化代码,设置带参函数,暂时懒得想。要从(0,0)到(0,-384)

qq_55786319的博客 2745

HTML5跑动的小人

HTML5 跑动的小人源码例子

js中键盘控制上下左右

JavaScript中用键盘实现控制小人上下左右移动: 浏览器实现效果: 代码实现: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>键盘控制特效</title> <style type="text/css"> ...

zag666的博客 1978

js键盘事件实现人物的行走

主要为大家详细介绍了js键盘事件实现人物的行走,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

从零到一:鲲鹏920服务器上的DeepSeek模型部署全流程解析

本文详细解析了在华为鲲鹏920服务器上部署DeepSeek模型的全流程,包括环境准备、模型服务框架部署、性能优化及生产环境方案。通过ARM架构优化和量化技术,显著提升模型推理效率,适用于企业级AI应用场景,助力国产化技术落地。

weixin_29094775的博客 599

HTML+CSS+JS案例展示(跟随鼠标移动的小人)

跟随鼠标移动的小人js_mousemove

weixin_42541725的博客 1953

SPI 协议帧格式深度解析:从 8 位数据到 16 位扩展的 3 种模式

本文深入解析SPI协议的帧格式,涵盖从8位标准到16位扩展的三种模式。通过详细讲解SPI时钟模式、数据宽度配置及实际应用案例,帮助开发者掌握SPI外设的深度定制能力,提升嵌入式系统开发效率。特别适用于连接传感器、存储器和显示器等高速通讯场景。

weixin_34110749的博客 346

HTML:用键盘实现元素的方向移动

案例:div的方向移动 body部分: <div id="ok">✈</div> style样式:自己设置大小灯样式,其中最重要的是要元素脱离文档流---不占页面位置了,其下也可以放其他元素。 #ok {position: absolute; } 补absolute:它的参照物是最近使用了定位的父级,如果没有找body。 此案例中div id="ok"的父级就是body。 首先:我们需要知道怎样将键盘中的按键与元素/对象相联系,能控制它。 这就是JS键盘事件

qq_51874203的博客 2579

【Flutter 问题系列第 85 篇】Xcode 运行 Flutter 提示 The Dart VM Service was not discovered after 60 seconds.

在 Xcode 上运行 Flutter 时提示 `The Dart VM Service was not discovered after 60 seconds. This is taking much longer than expected...`,意思是 `60秒后未发现Dart虚拟机服务。这比预期的要长得多`

“Allen Su”的博客 2239

[deprecated]第九章:SVM机制: 9-2 Linux HMM原理与实现详解

Linux内核HMM(异构内存管理)子系统为异构计算平台提供统一内存管理机制,支持CPU与GPU等设备共享虚拟地址空间,实现零拷贝数据访问。其核心功能包括:1)统一虚拟地址空间,设备可直接访问CPU进程内存;2)实时页表同步与失效通知,确保地址空间一致性;3)支持设备端page fault处理;4)管理多种内存类型(系统内存、设备私有内存等)。HMM通过mmu_interval_notifier机制感知地址空间变化,提供标准API简化驱动开发,显著提升异构计算性能和数据传输效率。

图形/计算GPU的驱动与虚拟化技术分享园地 2547

使用canvas完成帧动画(方向键控制行走的小人)

&lt;!DOCTYPE html&gt; &lt;html lang="en"&gt; &lt;head&gt; &lt;meta charset="UTF-8"&gt; &lt;title&gt;Title&lt;/title&gt; &lt;style&gt; canvas { bord

qq_32849999的博客 3349

从苏宁电器到卡巴斯基(第二部)第01篇:我在卡巴的日子 I

聊聊行业薪酬 我相信不论是谁,如果是入职一家新的公司,那么他最想知道的一件事情就是待遇情况了。这里既包含每月实际能到手多少钱,又包括五险一金是否齐全以及是按照高标准还是低标准缴纳。另外,如果是入职IT公司,还会在意年终奖有多少,毕竟某些富裕的IT企业,每到年末就会以此制造新闻来博取大家的关注,以彰显自身的实力。 一言以蔽之,待遇问题也就是年收入究竟会有多少,也是我们进入职场的人喜欢相互打听的问题。比如我研究生那届最厉害的一位同学,签了A公司的算法岗位,年薪30W+(税前,下同),在当时的我看来就是天价了

Gleam的专栏 1226

html5小游戏键盘控制角色移动_《创意游戏编程》第二课 键盘控制小鸟移动

演示:知乎视频​www.zhihu.com准备:1.关注大李日志,下载编辑器或直接使用线上编辑器 2.下载图片bird.png3.开始3.1 加载图片,创建画布function preload() { img = loadImage('bird.png'); } function setup() { createCanvas(400,400);//创建一个400*400的画布 } ...

weixin_29331985的博客 520

AI智能体面试实战与真题解析: 312+道面试题完整答案 (下篇)

本文覆盖220道基础八股文+92道项目面试题,涵盖Agent架构、RAG、工具调用、记忆系统、多智能体、大模型基础、工程化实践、Prompt工程9大模块,含完整代码实现和模拟面试剧本。

program哲学 302

【AI大模型:前沿】44、大模型+机器人:从自动化工具到通用智能体的技术革命与应用全景

大模型与机器人的融合催生了“具身智能体”,突破传统机器人智能化缺失、功能单一等瓶颈。大模型赋予机器人三大能力:常识推理(如热牛奶需去包装)、模糊指令解析(如“整理书桌”拆解步骤)、零样本任务泛化(如搭乐高桥)。技术实现上,通过多模态融合(视觉-语言-动作)、仿真训练(虚拟试错)和实时反馈(动态调整动作)形成闭环。主流框架如Google RT-2(端到端动作生成)、斯坦福Q-Transformer(强化学习优化)和Figure 01(ChatGPT驱动人形机器人)各具优势,可适配工业、家庭等场景。该技术正重塑

2025博客之星Top81。专注AI工程化与架构实战。从分布式思维到模型部署,用工程化视角为你厘清AI落地的真实路径。 2020

html5支持左右键切换页面代码,HTML5+JS打造的一个跑动小人(左右方向键控制)...

HTML5+JS打造的一个跑动小人(左右方向键控制)_网页代码站(www.webdm.cn)您的浏览器不支持canvas标签,推荐您更换谷歌游览器,全面兼容html5。var eventjs = {//添加事件bind: function(elem, type, handler){if (elem.addEventListener) {elem.addEventListener(type, han...

weixin_39621819的博客 675

即插即用系列(代码实践) | CVPR 2025 WPFormer:小波与原型增强Transformer——表面缺陷检测SOTA,专治弱缺陷与杂乱背景

摘要:本文提出了一种基于小波变换和原型增强的Transformer模型(WPFormer),用于像素级表面缺陷检测。该模型针对工业场景中微弱缺陷难以识别和杂乱背景干扰严重的问题,创新性地将小波变换引入Transformer的注意力机制,通过频域信息分离噪声与边缘特征,同时利用原型向量引导查询,实现了更精准的缺陷定位。核心模块包括小波增强交叉注意力(WCA)和原型引导交叉注意力(PCA),适用于工业缺陷检测、伪装目标检测和医学图像分割等任务。代码已开源,支持即插即用集成到现有框架中。

分享顶会顶刊论文即插即用模块 301

奔跑的小人,在屏幕上从左向右移动”的代码实现“小人在屏幕上从右向左移动” 按下键“A”,小人向左移动;按下键“D”,小人向右移动; 按下键“W”,小人向上移动;按下键“X”,小人向下移动; 通过主函数

@T奔跑的小人,在屏幕上从左向右移动”的代码实现“小人在屏幕上从右向左移动” 按下键“A”,小人向左移动;按下键“D”,小人向右移动; 按下键“W”,小人向上移动;按下键“X”,小人向下移动; OC 新的改变`#pragma once #include using namespace std; #include<stdio.h> #include<conio.h> #include<windows.h> class Move { public: void move(in

zhan12521的博客 4131

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

小人html代码,动的小人.html

动的小人body {background:black; text-align: center;}#c1 {background:white;}window.onload=function(){let oC=document.getElementById('c1');let gd=oC.getContext('2d');let oImg=new Image();oImg.src='sprit1.jp...

weixin_34718952的博客 1597

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

html5奔跑的小人,奔跑的小人(原创)

* {padding:0;margin:0;}body {background:#333;}.man {width:100px;height:200px;position:absolute;top:200px;left:100px;animation-name:run;animation-duration:3s;animation-timing-function:linear;animation-...

weixin_29802189的博客 781

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

JavaScript之键盘练习 左右移动

键盘练习 左右移动左右移动 左右移动 <html> <head> <meta charset="utf-8"> <title>键盘事件 左右移动</title> <style> .box{ width: 100%; height: 400px; background-color: #0000FF; position: relative; } .item{ width

雪落无痕的博客 417

基于html的火柴人羽毛球游戏

一、游戏简介 火柴人羽毛球灵感来自于flash小游戏 游戏中,玩家可操作画面中的火柴人来进行羽毛球比赛 通过键盘上的左右键控制火柴人的左右移动,按上键跳跃,按下键挥拍击球 当某一方分数达到7分即判定取胜 玩家可以选择与其他玩家对战、与不同难度AI对战,以及观看AI对战 二、游戏实...

qq_38474815的博客 1513

jQuery制作一个小人移动的效果

event.keyCode===40 //获取小键盘的下方向键的ASCll码。event.keyCode===38 //获取小键盘的上方向键的ASCll码。event.keyCode===37 //获取小键盘的左方向键的ASCll码。event.keyCode===39 //获取小键盘的右方向键的ASCll码。

zzzwyZYzzy的博客 508

【Web】html中上下左右控制对象移动Demo

title>html中上下左右控制对象移动Demo--沙师弟专栏在键盘上,按上下左右,控制一个图片 在 另一个图片 上移动。

沙师弟专栏 9491

js-键盘事件案例-小人快跑

js-键盘事件案例-小人快跑 案例思路: 利用键盘的keycode判断按了上下左右什么键,然后利用键盘事件onkeydown对小人的定位进行改变即可 css部分: 由于操纵的是小人的位置,所以我们要先给小人添加一个定位 <style> #imgs { position: absolute; left: 500px; top: 20...

qq_25503949的博客 912
上一篇: 574day(帧动画.html)
下一篇: 576day(认识canvas的转换.html)
orangecloudy
博客等级 码龄9年 56粉丝 581原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值