我制作了一个 jsFiddle: http: //jsfiddle.net/mFxhS/1/但奇怪的是效果不佳,但您仍然可以看到整个代码。
但是我做了一些console.log,他确实知道标识符,但仍然layer.get('#group'+i)[0]
找不到它们。
在第 126 行使用以下内容:
console.log(layer.getChildren());
console.log(i);
console.log(this.getId());
console.log(stage.get('#group'+i)[0].getId());
你通常会得到:
[Kinetic.Rect, Kinetic.Rect, Kinetic.Group]
0
group0
group0
但是当我旋转对象时,我得到:
[Kinetic.Rect, Kinetic.Rect, Kinetic.Group]
0
group0
Uncaught TypeError: Cannot call method 'getId' of undefined
这怎么可能发生?如果我查看第一个控制台行,您仍然有相同的对象,它们具有相同的 _ID en 和相同的属性 ID。
很抱歉破坏了 jsFiddle,我不明白为什么它不起作用。
谢谢,