html5弹跳球示例代码


Posted in HTML / CSS onJuly 23, 2013

html5弹跳球示例代码 

复制代码
代码如下:

<html>
<head>
<meta charset=utf-8>
<title>跳跳球</title>
<script>
//box
var box_x=0;
var box_y=0;
var box_width=300;
var box_height=300;
//注意:定位球采用球的中心
var ball_x=10;
var ball_y=10;
var ball_radius=10;
var ball_vx=5;
var ball_vy=3;
var box_bound_left=box_x+ball_radius;
var box_bound_right=box_x+box_width-ball_radius;
var box_bound_top=box_y+ball_radius;
var box_bound_bottom=box_y+box_height-ball_radius;
//ball
//context
var ctx;
function init()
{
ctx=document.getElementById('canvas').getContext('2d');
ctx.lineWidth=ball_radius;
ctx.fillStyle="rgb(200,0,50)";
move_ball();
setInterval(move_ball,100);//note
}
function move_ball()
{
ctx.clearRect(box_x,box_y,box_width,box_height);
move_and_check();
ctx.beginPath();
ctx.arc(ball_x,ball_y,ball_radius,0,Math.PI*2,true);
ctx.fill();
ctx.strokeRect(box_x,box_y,box_width,box_height);
}
function move_and_check()
{
var cur_ball_x=ball_x+ball_vx;
var cur_ball_y=ball_y+ball_vy;
if(cur_ball_x<box_bound_left)
{
ball_vx=-ball_vx;
cur_ball_x=box_bound_left;
}
if(cur_ball_x>box_bound_right)
{
ball_vx=-ball_vx;
cur_ball_x=box_bound_right;
}
if(cur_ball_y<box_bound_top)
{
ball_vy=-ball_vy;
cur_ball_y=box_bound_top;
}
if(cur_ball_y>box_bound_bottom)
{
ball_vy=-ball_vy;
cur_ball_y=box_bound_bottom;
}
ball_x=cur_ball_x;
ball_y=cur_ball_y;
}
</script>
</head>
<body onLoad="init()">
<canvas id="canvas" width="400" height="400"/>
</body>
</html>
HTML / CSS 相关文章推荐
基于CSS3实现的几个小loading效果
Sep 27 HTML / CSS
CSS3中background-clip和background-origin的区别示例介绍
Mar 10 HTML / CSS
结合CSS3的布局新特征谈谈常见布局方法
Jan 22 HTML / CSS
利用CSS3动画实现圆圈由小变大向外扩散的效果实例
Sep 10 HTML / CSS
CSS3 边框效果
Nov 04 HTML / CSS
基于HTML5 Canvas 实现商场监控实例详解
Nov 20 HTML / CSS
HTML5 使用 sessionStorage 进行页面传值的方法
Jul 02 HTML / CSS
html5 桌面提醒:Notifycations应用介绍
Nov 27 HTML / CSS
基于HTML5 Canvas的3D动态Chart图表的示例
Nov 02 HTML / CSS
Canvas中设置width与height的问题浅析
Nov 01 HTML / CSS
html5跳转小程序wx-open-launch-weapp踩坑
Dec 02 HTML / CSS
HTML5适合的情人节礼物有纪念日期功能
Jan 25 HTML / CSS
x-ua-compatible content=”IE=7, IE=9″意思理解
Jul 22 #HTML / CSS
canvas使用注意点总结
Jul 19 #HTML / CSS
有关HTML5 Video对象的ontimeupdate事件(Chrome上无效)的问题
Jul 19 #HTML / CSS
HTML5 的新的表单元素(datalist/keygen/output)使用介绍
Jul 19 #HTML / CSS
HTML5注册表单的自动聚焦与占位文本示例代码
Jul 19 #HTML / CSS
HTML5标签与HTML4标签的区别示例介绍
Jul 18 #HTML / CSS
html5 音乐播放器 audio 标签使用概述
Jul 15 #HTML / CSS
You might like
PHP.MVC的模板标签系统(三)
2006/09/05 PHP
php面向对象全攻略 (五) 封装性
2009/09/30 PHP
php图片的裁剪与缩放生成符合需求的缩略图
2013/01/11 PHP
php实现的双向队列类实例
2014/09/24 PHP
PHP中使用socket方式GET、POST数据实例
2015/04/02 PHP
9个比较实用的php代码片段
2016/03/15 PHP
兼容多浏览器的字幕特效Marquee的通用js类
2008/07/20 Javascript
利用jQuery实现可输入搜索文字的下拉框
2013/10/23 Javascript
jquery-syntax动态语法着色示例代码
2014/05/14 Javascript
JavaScript设计模式之适配器模式介绍
2014/12/28 Javascript
JavaScript如何禁止Backspace键
2015/12/02 Javascript
总结Javascript中数组各种去重的方法
2016/10/04 Javascript
通过Ajax使用FormData对象无刷新上传文件方法
2016/12/08 Javascript
js实现文件上传功能 后台使用MultipartFile
2018/09/08 Javascript
详解vue-router传参的两种方式
2018/09/10 Javascript
浅谈JavaScript闭包
2019/04/09 Javascript
VSCode搭建React Native环境
2020/05/07 Javascript
浅谈Vue 自动化部署打包上线
2020/06/14 Javascript
JavaScript JSON使用原理及注意事项
2020/07/30 Javascript
[53:23]Secret vs Liquid 2018国际邀请赛淘汰赛BO3 第二场 8.25
2018/08/29 DOTA
Python创建二维数组实例(关于list的一个小坑)
2017/11/07 Python
基于Django filter中用contains和icontains的区别(详解)
2017/12/12 Python
python爬虫获取多页天涯帖子
2018/02/23 Python
面向初学者的Python编辑器Mu
2018/10/08 Python
python 实现倒排索引的方法
2018/12/25 Python
Python性能分析工具Profile使用实例
2019/11/19 Python
基于Tensorflow一维卷积用法详解
2020/05/22 Python
飞利浦比利时官方网站:Philips比利时
2016/08/24 全球购物
2014年营销工作总结
2014/11/22 职场文书
单位考核聘任报告
2015/03/02 职场文书
优秀员工自荐书
2015/03/06 职场文书
房地产置业顾问工作总结
2015/10/23 职场文书
公安纪律作风整顿心得体会
2016/01/23 职场文书
《梅花魂》教学反思
2016/02/18 职场文书
利用Python网络爬虫爬取各大音乐评论的代码
2021/04/13 Python
CSS filter 有什么神奇用途
2021/05/25 HTML / CSS