html5 cavans的小应用
1.canvas鼠标画线,canvas小方块移动,canvas小方块旋转并缩放
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>绘制方块</title>
<style>
body{background:#000;}
#c1{background:#fff;}
span{background:#fff;}
</style>
<script>
window.onload = function(){
var oC = document.getElementById('c1');
var oGc = oC.getContext('2d');
oGc.fillRect(0,0,100,100);
var num = 0;
setInterval(function(){
num++;
oGc.clearRect(0,0,oC.width,oC.height);
oGc.fillRect(num,num,100,100);
},30);
};
</script>
</head> <body>
<!--canvas 的宽高写在行间样式中是画布的大小,写在行间中就是等比缩放-->
<canvas id="c1" width="400" height="400">
<span>不支持canvas</span>
</canvas>
</body>
</html>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>小方块的缩放和旋转</title>
<style>
body{background:#000;}
#cl{background:#fff;}
span{background:#fff;}
</style>
<script>
window.onload = function(){
var oC = document.getElementById('cl');
var oGc = oC.getContext('2d');
var num = 0 ;
var value = 1;
var num2 = 0; setInterval(function(){
num++;
oGc.clearRect(0,0,oC.width,oC.height);
oGc.save(); // 注意这个使用的地方,画布清掉的一开始就用
if(num2 == 100){
value = -1;
}else if(num2 == 0){
value = 1;
}
num2 += value;
oGc.translate(100,100);
oGc.rotate(num*Math.PI/180);
oGc.scale(num2*1/50,num2*1/50);
oGc.translate(-50,-50);
oGc.fillRect(0,0,100,100);
oGc.restore();
},30); };
</script>
</head> <body>
<canvas id="cl" width="400" height="400">
<span>浏览器不支持canvas</span>
</canvas>
</body>
</html>
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<style>
body{background:#000;}
#c1{background:#fff;}
span{background:#fff;}
</style>
<script>
window.onload = function(){
var oC = document.getElementById('c1');
var oGc = oC.getContext('2d'); oC.onmousedown = function(ev){
var ev = ev || window.event; oGc.moveTo(ev.clientX-oC.offsetLeft,ev.clientY-oC.offsetTop);
oC.onmousemove = function(ev){
var ev = ev || window.event;
oGc.lineTo(ev.clientX-oC.offsetLeft,ev.clientY-oC.offsetTop);
oGc.stroke();
};
oC.onmouseup = function(){
oC.onmousemove = oC.onmouseup = null;
};
return false;
};
};
</script>
</head> <body>
<canvas id="c1" width="400" height="400">
<span>不支持canvas</span>
</canvas>
</body>
</html>
html5 cavans的小应用的更多相关文章
- HTML5 的一些小的整理吧
主要的就是一些HTML 5 API 的使用 也是借鉴别人的博客 ,和MDN(中文部分的还是能看的懂) 上面的一些东西 具体的代码在 有道云笔记里面也有. 先把总得列出来 1.Canvas绘图 学完这个 ...
- 通通的最后一篇博客(附自制html5平面射击小游戏一枚)
这是我最后一篇博客了,由于本人的人生规划吧,以后应该也写不出什么好的技术文章了,到现在在博客园写了2年, 今天一看,我也有了120个粉丝,好几万的浏览量,感谢大家的支持啊~~ 半年没有写博客了,由于半 ...
- [HTML5实现人工智能]小游戏《井字棋》发布,据说IQ上200才能赢
一,什么是TicTacToe(井字棋) 本 游戏 为在下用lufylegend开发的第二款小游戏.此游戏是大家想必大家小时候都玩过,因为玩它很简单,只需要一张草稿纸和一只笔就能开始游戏,所以广受儿 ...
- 【HTML5游戏开发小技巧】RPG情景对话中,令文本逐字输出
以前用JAVAscript实现过令文本逐字输出的效果,今天我来用html5中的canvas实现一下.canvas里的内容可不像<p>那样好操作,首先,你需要懂得一些html5的API才能操 ...
- 【HTML5游戏开发小技巧】RPG情形对话中,令文本逐琢夸出
从前用JAVAscript完成过令文本逐琢夸出的效果,明天嗡炒用html5中的canvas完成一下.canvas里的内容可没有像<p>那样好操做,起首,您需求懂得一些html5的API才气 ...
- JavaScript+HTML5 实现打地鼠小游戏
一.游戏简介 打地鼠这个游戏相信大家都不陌生,也是童年时候一款经典的游戏.本次游戏的编写是以html文件形式完成的,并且使用HBulider软件进行编写,使用谷歌浏览器展示效果,游戏将会采用JavaS ...
- 让所有的浏览器都能识别HTML5标签样式的小插件
如今HTML5愈来愈引发大家的关注了,但目前支持HTML5的浏览器还不是主流,特别是国内用户近50%以上仍旧使用IE6,由于支持HTML5的IE9不支持Xp系统安装,这样未来很长一段时间,HTML5的 ...
- 初学HTML5做的小知识点
新增的HTML5标签 语义化标签 :<header> 头标签 <nav> 导航标签 <section> 表示文档的结构.栏目 < ...
- html5 canvas 移动小方块
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
随机推荐
- 深入JVM内核--常用JVM配置参数
Trace跟踪参数 -verbose:gc -XX:+printGC 可以打印GC的简要信息 [GC 4790K->374K(15872K), 0.0001606 secs] [GC 4790K ...
- lua https request 调用
网上资料 引用ssl.https 包 local https = require("ssl.https") 之后按同http一样调用. 但是,这种只最基本的实现了访问https服务 ...
- Hadoop什么?
Hadoop是什么?Hadoop是一个开发和运行处理大规模数据的软件平台,是Appach的一个用java语言实现开源软件框架,实现在大量计算机组成的集群中对海量数据进行分布式计算. Hadoop框架中 ...
- python3下scrapy爬虫(第二卷:初步抓取网页内容之直接抓取网页)
上一卷中介绍了安装过程,现在我们开始使用这个神奇的框架 跟很多博主一样我也先选择一个非常好爬取的网站作为最初案例,那么我先用屌丝必备网站http://www.shaimn.com/xinggan/作为 ...
- Python练习 ——名片管理系统(增添,删除,查找,修改)
需要注意的一个地方是,如果你用的版本是3.6的,那么下面的用到的所有从外界接收信息所用到的input()用input()就行了,如果是2.7版本,那么如果接收的是字符串要用raw_input()(将接 ...
- 一站式自动化测试平台 http://www.Autotestplat.com
Autotestplat 一站式自动化测试平台及解决方案 自动化平台开发 3.1 自动化平台开发方案 3.1.1 功能需求 支持 API.AppUI.WebUI 性能等自动化测试,集成实现测试用例管理 ...
- 严谨与特色并行——WSDM 2015大会见闻记
2015大会见闻记" title="严谨与特色并行--WSDM 2015大会见闻记"> 第8届ACM网络搜索与数据挖掘会议(ACM International Co ...
- 【U创营学员招募】8节免费云计算课程,让你轻松掌握生产技能
课程不错,免费听课.免费听课.免费听课,强烈推荐-! 公众号对话框回复"课程助手" 即可报名! ---END---
- Redis从出门到高可用--Redis复制原理与优化
Redis从出门到高可用–Redis复制原理与优化 单机有什么问题? 1.单机故障; 2.单机容量有瓶颈 3.单机有QPS瓶颈 主从复制:主机数据更新后根据配置和策略,自动同步到备机的master/s ...
- Core Java之7种单例模式
初始化空 初始化创建 一把锁 两把锁 大专栏 Core Java之7种单例模式"headerlink" title="静态内部类">静态内部类 静态加载 ...