不能向对象添加事件监听器。 fabricjs

时间:2015-09-25 16:00:08

标签: javascript canvas fabricjs

无法向对象添加事件侦听器。也许有人解决了同样的问题?我收到错误"未捕获TypeError:canvas.on不是函数"。我也用jQuery,可以在这个问题?我的代码:

window.onload = function() {
       var canvas = new fabric.Element('canvas');
       var imgElement = document.getElementById('uploaded_img');
       var width = imgWidth = imgElement.width;
       var height = imgHeight = imgElement.height;

       if(width >= screen.width){
           width = (screen.width - 70);
       }

       canvas.setWidth(width);
       canvas.setHeight(height);

       var imgInstance = new fabric.Image(imgElement, {
         left: width/2,            
         top: height/2         
       });                     
       canvas.add(imgInstance);

       canvas.on('mouse:up',function () {
          alert('test');
       });
}

1 个答案:

答案 0 :(得分:0)

来自http://fabricjs.com/docs/fabric.Canvas.html

fabric. Canvas
fabric.Element
new Canvas() §
Deprecated:
Use fabric.Canvas instead.
Source:
fabric.js, line 9066

因此不推荐使用Fabric.Element。因此强烈建议不要使用它。

无论如何,我在文档中找不到关于这个被弃用的元素'的方法的任何内容。

所以我认为你的问题的答案是使用推荐的Canvas构造函数。我还假设on()方法实际上并不存在于Element上,如错误所示。