实现逻辑是这样:
1,添加事件监听,比如说,鼠标按下 做什么,滑动 做什么,d起做什么.一般鼠标事件都是判断d起的位置
2,判断有效坐标,在事件中判断坐标位置是否在图片位置,也就是图片在canvas的位置.
ex:
//some code...
canvas.width=400
canvas.height=400
var context2d = canvas.getContext("2d")
var img =new Image()
img.src="xxx/xxx.png"
img.onload=function(){
context2d.drawImage(img,X,Y,WIDTH,HEIGTH)
//X=0,Y=0,W=50,H=50
canvas.addEventListener("mouseup", keyUp, false)
}
function keyUp(evt){
Event_UpX = evt.offsetX
Event_UpY = evt.offsetY
if(Event_UpX>=绘制坐标X&&Event_UpX<=图片宽度){
if(Event_UpY>=绘制坐标Y&&Event_UpY<=图片高度){
//do something
}
}
}
事件属性button,是触发事件的时候,获取事件对象获取button的值判断,是按下了鼠标的哪个键。
1、首先创建一个名称为button的html文件,如下图所示。
2、在body中加入onmousedown事件,事件中加入自定义函数,函数中加入事件返回对象。
3、接着加入一个p标签加入id,如下图所示。
4、然后创建一个自定义函数mybutton,如下图所示。
5、自定义函数中通过event。button属性获取整数值,并判断整数值来区分鼠标按键。
6、最后在浏览器中打开文件,在指定区域随意按下鼠标按键,查看结果。
添加html元素的事件有三种方法。1.通过HTML元素属性。简单说来就是在html结构中,给你要添加事件的元素添加一个属性。
属性名为 'on' + 事件名。
如:你要给a元素绑定一个click事件,你就该这么写:
<a href="http://blog.163.com/luping_01/blog/#" onclick='do something'>name</a>
2.通过对象属性。
对象指的是jDOM树里的对象,我们都知道,所有的html元素在DOM(文档对象类型)里都存在一个相应的DOM元素。
给这个DOM元素添加事件等同于方式一。这个属性名也一样:
也为 on + 事件名
如:
html结构:
<a href="http://blog.163.com/luping_01/blog/#" id="n">name</a>
js:
document.getElementById('n').onclick = function(){ //do something}
3.通过W3C监听方式(标准方式)或者IE专属的中间模型添加事件
W3C方式: elemennt.addEventListener(事件名,处理函数引用,true || false)
这里的事件名就是单纯的事件名,不需要加 on ,true表示在事件传播阶段捕获事件,false表示在事件冒泡阶段捕获事件,一般我们设为false!
IE模式: element.attachEvent( 'on' + 事件名,处理函数引用)
注意,IE模式需要加on
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)