canvas.drag.js 返回列表
/**
* canvasDrag
* canvas 拖拽事件
* canvas 元素右击事件
* canvas 元素左击事件
**/
$.fn.canvasDrag=function(canvas,options){
var i=0; //移动时累加参数
var settings = jQuery.extend({
px:0 //偏移left
,py:0 //偏移top
,movefun:function(){} //移动处理函数
,leftfun:function(){} //左键处理函数
,rightfun:function(){} //右键处理函数
}, options);
var canvasBox=this;
canvasBox.I=''; //有对象被选中时>-1
canvasBox.movefun=function(event){
event=!event?document.event:event;
canvasBox.unbind('mousemove');
i++;
//canvas.log(i);
eval("settings.movefun(event,canvasBox.I);");
setTimeout(function(){
$(canvasBox).mousemove(canvasBox.movefun);
},50);
};
canvasBox.bind('mousedown mouseup',function(event){
if(event.type=='mousedown'){
//canvas.log(event);
var _xy=getMouseXY(event);
canvasBox.I=canvas.isGraph({'x':_xy.x-canvas.pos.left,'y':_xy.y-canvas.pos.top});
if(event.button!=2){ //左键
canvasmouseXY={'x':_xy.x,'y':_xy.y};
canvasBox.bind('mousemove',canvasBox.movefun);
}
}
if(event.type=='mouseup'){
if(i<2){
if(event.button==2){ //右键
eval("settings.rightfun(event,canvasBox.I);");
}else{
eval("settings.leftfun(event,canvasBox.I);");
}
}
i=0;
canvasBox.I='';
canvasmouseXY={'x':0,'y':0};
canvasBox.unbind('mousemove');
}
});
return canvasBox;
};
Add New Content