2016-01-06 98 views
0

對象使用最新Fabric.js,我的代碼:事件綁定到在fabricJS

var imageAdded = new Image(); 
imageAdded.onload = function (img) { 
    var imgAdded = new fabric.Image(imageAdded, { 
     clipName: picID, 
     clipTo: function (ctx) { 
      return _.bind(clipByName, imgAdded)(ctx) 
     } 
    }); 
    canvas.add(imgAdded); 

    imgAdded.on("object:selected", function (e) { // It doesn't pass this function 
     alert(e.target.clipName + " is selected"); 
     e.target.clipTo = null; 
     canvas.renderAll(); 
    }); 
}; 
  • 我想,當我選擇一個對象,提醒,但不會將警報顯示,因爲函數,其中我做了一個代碼中的評論不起作用。
  • 我試過this link但仍不能實現。

我很欣賞每一個建議。謝謝!

回答

2

如果你想爲一個特定的對象,使用一個事件:

imgAdded.on("selected", function(){alert(this.clipName);}); 

若想事件帆布和所有對象:

canvas.on("object:selected", function(e){alert(e.target.clipName);}); 
+0

謝謝您的代碼!這絕對是工作。無論如何,我無法填充**選擇:清除**或清除**在這個'imgAdded.on(「選擇:清除」,.....);'。 imgAdded未選中時,如何調用此事件。另外,我可以在哪裏瞭解有關高級Fabric Js的更多信息? – Mes

+0

「選擇:清除」是一個畫布事件,而不是一個對象事件。還要檢查「之前:選擇:已清除」,因爲可能有機會獲得所選對象。 http://fabricjs.com/docs/這裏是文檔。 – AndreaBogazzi