当我在另一个画布上同时拖动另一个图像时,如何移动图像
how to move a image when i drag the other image in the other canvas at same time
我正在使用fabric.js处理两个画布。我还设置了两个画布来比较同一页中的两个图像。
像这样:
<canvas id="firstImg" width="843" height="1200"></canvas>
<canvas id="secondImg" width="843" height="1200"></canvas>
当我在另一个画布中拖动另一个图像时,我想移动一个图像。
我的意思是,当我拖动一个图像来改变第一个Img画布中的位置时,我也会同时移动第二个Img帆布中的另一个图像。
有可能吗??
你在找这样的东西吗?
我做了一个简单的功能,在小吃上画一个图像。拖动图像时,只需调用两个画布的函数即可。
http://jsfiddle.net/Niddro/96rdnv3L/
var canvasOne = document.getElementById("canvasOne");
var ctxOne = canvasOne.getContext("2d");
var canvasTwo = document.getElementById("canvasTwo");
var ctxTwo = canvasTwo.getContext("2d");
var mouseX=0;
var mouseY=0;
var imageX=0;
var imageY=0;
var drag = false;
canvasOne.addEventListener("mousedown", function(){drag=true;}, false);
canvasOne.addEventListener("mouseup", function(){drag=false;}, false);
canvasOne.addEventListener("mousemove", moveImage, false);
var myImage = new Image();
myImage.src = "http://home.niddro.com/HTML5/flxprt/img/logo_orange_small.png";
function moveImage(event) {
if (drag) {
var x = new Number();
var y = new Number();
var canvas = document.getElementById("canvasOne");
if (event.x != undefined && event.y != undefined)
{
x = event.x;
y = event.y;
}
else // Firefox method to get the position
{
x = event.clientX + document.body.scrollLeft +
document.documentElement.scrollLeft;
y = event.clientY + document.body.scrollTop +
document.documentElement.scrollTop;
}
x -= canvas.offsetLeft;
y -= canvas.offsetTop;
var deltaX = mouseX-x;
var deltaY = mouseY-y;
drawImage(imageX-deltaX,imageY-deltaY,ctxOne,canvasOne,myImage);
drawImage(imageX-deltaX,imageY-deltaY,ctxTwo,canvasTwo,myImage);
}
}
drawImage(imageX,imageY,ctxOne,canvasOne,myImage);
drawImage(imageX,imageY,ctxTwo,canvasTwo,myImage);
function drawImage(x,y,ctx,canvas,img) {
ctx.clearRect(0,0,canvas.width,canvas.height);
ctx.drawImage(img,x,y);
}
canvas {
border: 1px solid black;
}
<canvas id="canvasOne" width="500" height="300"></canvas><br />
<canvas id="canvasTwo" width="500" height="300"></canvas>
相关文章:
- 如何在鼠标悬停时在另一个图像上滑动图像.
- 是否可以仅通过jQuery将图像替换为用户动态选择的另一个图像
- 如何在另一个html文件的框架中包含图像
- 当我点击MVC视图中的图像时,如何打开另一个页面
- 如何将图像制作为按钮并将其重定向到另一个页面
- 如何使用onclick事件点击一个图像,并让它更改同一网页上的另一个图像
- 如果我将宽度调整为另一个值,找出我的图像的高度
- 从imgur api的另一个浏览器拖放图像
- 使用漂亮的照片点击另一个元素显示图像
- 在 JavaScript 中将一个.PNG图像拖放到另一个图像上
- 如何在CSS中修复与另一个图像进行比较的图像
- 接受从另一个浏览器窗口拖放图像
- 在页面中使用了两次多个图像上传,但第一个正在工作,另一个不起作用
- 多个背景图像,一个覆盖另一个
- HTML链接到页面,但带有另一个图像(可以通过JavaScript更改)
- 使用 JQuery 从另一个元素的 id 为图像分配属性
- 用另一个替换现有图像
- Jquery-将图像从一个元素移动到另一个元素
- 当我在另一个画布上同时拖动另一个图像时,如何移动图像
- 当我点击一个图像时,如何将其更改为另一个图像