首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >右击pan织物js

右击pan织物js
EN

Stack Overflow用户
提问于 2016-09-16 12:35:09
回答 1查看 552关注 0票数 0

我希望能够用鼠标右键替换我的onclick按钮。

我的当前代码使用

代码语言:javascript
复制
$('#goRight').click(function(){
        var units = 50 ;
        var delta = new fabric.Point(units,0) ;
        canvas.relativePan(delta) ;
    }) ;

    $('#goLeft').click(function(){
        var units = 50 ;
        var delta = new fabric.Point(-units,0) ;
        canvas.relativePan(delta) ;
    }) ;
    $('#goUp').click(function(){
        var units = 50 ;
        var delta = new fabric.Point(0,-units) ;
        canvas.relativePan(delta) ;
    }) ;

    $('#goDown').click(function(){
        var units = 50 ;
        var delta = new fabric.Point(0,units) ;
        canvas.relativePan(delta) ;
    }) ;

我想用这段代码

代码语言:javascript
复制
function startPan(event) {
  if (event.button != 2) {
    return;
  }
  var x0 = event.screenX,
      y0 = event.screenY;
  function continuePan(event) {
    var x = event.screenX,
        y = event.screenY;
    fc.relativePan({ x: x - x0, y: y - y0 });
    x0 = x;
    y0 = y;
  }
  function stopPan(event) {
    $(window).off('mousemove', continuePan);
    $(window).off('mouseup', stopPan);
  };
  $(window).mousemove(continuePan);
  $(window).mouseup(stopPan);
  $(window).contextmenu(cancelMenu);
};
function cancelMenu() {
  $(window).off('contextmenu', cancelMenu);
  return false;
}
$(canvasWrapper).mousedown(startPan);

但是我不知道如何在我的画布上实现它。因为我是fabricJS新手,这可能是一个简单的任务,但我无法解决。

我的小提琴,或者如果你看一下第4版,你会发现我把它放进去了,但不起作用。请告诉我我做错了什么。这就是我想要实现的期望结果

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-16 13:05:03

您在这里有一个错误:

代码语言:javascript
复制
fc.relativePan({ x: x - x0, y: y - y0 });

它应该是

代码语言:javascript
复制
canvas.relativePan({ x: x - x0, y: y - y0 });

在那之后,它做了它应该做的http://jsfiddle.net/n3pryn3x/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39531695

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档