html5如何使用canvas实现待机动画
发表于:2024-11-20 作者:千家信息网编辑
千家信息网最后更新 2024年11月20日,这篇文章给大家分享的是有关html5如何使用canvas实现待机动画的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。免责声明不是打算教 canvas,只是觉得好玩就简单看了一
千家信息网最后更新 2024年11月20日html5如何使用canvas实现待机动画
这篇文章给大家分享的是有关html5如何使用canvas实现待机动画的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
免责声明
不是打算教 canvas,只是觉得好玩就简单看了一下。
意思就是做得略粗糙,别喷我。。
效果
帧数略低,实际当然流畅得多。
实现 HTML:
JS:
_window.onload = function () { let // 画布 ctx = document.getElementById('canvas').getContext('2d'), // 画布大小 canvas_width = document.getElementById('canvas').width, canvas_height = document.getElementById('canvas').height, // DVD 图标的文本颜色、字体、背景色 text_color = ['green', 'blue', 'purple', 'yellow', 'white', 'yellow', 'white'], text_font = 'italic bold 50px yahei', background_color = ['red', 'orange', 'yellow', 'green', 'blue', 'indigo', 'violet'], // 背景矩形的尺寸 background_width = 110, background_height = 50, // 向矩形添加文本时,高度有点偏差 fix_height = 7, // 速度,每次重绘移动 0.5 px speed_x = 0.5, speed_y = 0.5, // 移动方向,初始为 'r-b' 右下 direction = 'r-b', // 图标 x 和 y 坐标,初始为 0 position_x = 0, position_y = 0, // 碰撞次数,用来计算背景和文本颜色 count = 0 dvd() function dvd() { // 移动方向 switch (direction) { // 右下 case 'r-b': position_x += speed_x position_y += speed_y break // 右上 case 'r-t': position_x += speed_x position_y -= speed_y break // 左下 case 'l-b': position_x -= speed_x position_y += speed_y break // 左上 case 'l-t': position_x -= speed_x position_y -= speed_y break } // 清空画布 ctx.clearRect(0, 0, canvas_width, canvas_height) // 重绘 ctx.fillRect(position_x, position_y, background_width, background_height) // 碰撞检测 // 底 if (position_y + background_height >= canvas_height) { direction = direction.replace('b', 't') // 碰撞次数统计 count += 1 } // 右 if (position_x + background_width >= canvas_width) { direction = direction.replace('r', 'l') count += 1 } // 左 if (position_x < 0) { direction = direction.replace('l', 'r') count += 1 } // 上 if (position_y < 0) { direction = direction.replace('t', 'b') count += 1 } // 文本 ctx.font = text_font ctx.fillStyle = text_color[count % 7] ctx.fillText("DVD", position_x, position_y + background_height - fix_height) // 背景色 ctx.fillStyle = background_color[count % 7] // 开始动画 window.requestAnimationFrame(dvd) }}
感谢各位的阅读!关于"html5如何使用canvas实现待机动画"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
文本
背景
动画
画布
碰撞
移动
待机
内容
图标
方向
更多
次数
矩形
篇文章
颜色
不错
好玩
实用
流畅
粗糙
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
服务器长宽
宝山区智能化网络技术服务操作
服务器出现信号灯超时
黑建筑的网络技术专业
电力网络安全领导机构
电信网络服务器的密码忘了怎么办
网络安全方针政策基本法则
消费机数据库作用
网络安全培训纪要
网络安全应急新闻稿
数据库中的主窗体
战地4租用服务器多少钱
web服务器监控阈值
镇江银联软件开发业务流程
管家婆远程服务器连接不上网
软件开发竞争吗
开展网络安全进学校宣传活动
网络安全法为何难产
网吧的公共网络安全吗
数据库利润表设计
一梦江湖服务器赋歌江湖
制作数据库需要哪些设备
软件开发项目管理评审
软件开发公司最少有多少部门
分布式数据库相关技术
c 嵌入式数据库
年级的数据库语言
27岁自学软件开发难吗
什么遍历sqlite数据库
网络安全法为何难产