Html5 Canvas初探学习笔记(15) -鼠标事件

来源:互联网 发布:sqlserver 定义表变量 编辑:程序博客网 时间:2024/06/06 00:53

小满(bill man)个人原创,欢迎转载,转载请注明地址,小满(bill man)的专栏地址http://blog.csdn.net/bill_man

本篇完成这样一个例子,让主角随着鼠标移动,效果如下:


update函数和上一篇一致,代码如下:


然后来看init的初始化部分,和上一篇的示例一样,代码如下:

然后分别定义mousedownmousemovemouseup,分别对应鼠标按下,移动和抬起。代码分别如下:


首先用如下代码获得坐标,如下代码使用于各种浏览器:

var mx,my;

if(ev.layerX || ev.layerX==0){

mx = ev.layerX;

my = ev.layerY;

}else if(ev.offsetX || ev.offsetX==0){

mx = ev.offsetX;

my = ev.offsetY;

}

然后检测鼠标坐标是否在图片的范围内,如果在范围内获得坐标偏移。


如果mousedown在图片范围内,在move中重新获得图片坐标,在抬起函数时释放,然后把函数注册到canvas中,完成本示例/

如有错误,希望大家多多指正

下一篇继续研究canvas的游戏实例


原创粉丝点击