我正在尝试使用以下代码获取单击的图像的ID:

theImg.on('click', function() {
    alert($(this).attr('id')); //Should show 'IDofImg'
});

Konva代码如下:
var theImg = new Konva.Image({
    image: imageObj,
    x: stage.getWidth() / 2 - 200 / 2,
    y: stage.getHeight() / 2 - 137 / 2,
    opacity: 0.8,
    shadowColor: 'black',
    shadowBlur: 5,
    id: 'IDofImg',
    shadowOffset: {
        x: 0,
        y: 0
    },
    startScale: 1,
    shadowOpacity: 0.6,
    draggable: true
});

如你所见,我有一个id:'IDofImg',在图像的制作过程中,但它似乎没有输出所需的id。
它当前在单击时输出:
function() {
   // setting
   if (arguments.length) {
       this[setter](arguments[0]);
       return this;
   }
   // getting
   else {
       return this[getter]();
   }
}

我错过了什么?
Fiddle here

最佳答案

您应该使用this.id(),因为它是Konva图像对象,而不是html/javascript对象。
另请参见文档:http://konvajs.github.io/api/Konva.Node.html#id

关于javascript - Konva从点击事件中获取图像ID,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32951482/

10-12 21:38