gpt4 book ai didi

javascript - 在 Kinetic.js 中,原型(prototype)节点不会影响所有子节点?

转载 作者:行者123 更新时间:2023-12-02 18:58:23 25 4
gpt4 key购买 nike

http://jsfiddle.net/VTK7K/

Kinetic.Node.prototype.test = function() {
alert('worked');
};

var d = new Kinetic.Image({});
d.test();

我正在尝试向 Kinetic.Node 添加一个原型(prototype)方法,以便扩展它的所有对象都可以使用它,这似乎不适用于某些对象,但适用于其他对象。

我做错了什么吗?

最佳答案

原型(prototype)是在定义对象时声明的。当它被实例化时,它不执行与 KineticJS 中的原型(prototype)相关的任何操作,据我所知。

要重新定义对象的原型(prototype),您可以再次运行以下命令来添加 Kinetic.Node 的附加原型(prototype)。

Kinetic.Global.extend(Kinetic.Container, Kinetic.Node);
Kinetic.Global.extend(Kinetic.Shape, Kinetic.Node);
Kinetic.Global.extend(Kinetic.Group, Kinetic.Container);
Kinetic.Global.extend(Kinetic.Layer, Kinetic.Container);
Kinetic.Global.extend(Kinetic.Stage, Kinetic.Container);
Kinetic.Global.extend(Kinetic.Circle, Kinetic.Shape);
Kinetic.Global.extend(Kinetic.Ellipse, Kinetic.Shape);
Kinetic.Global.extend(Kinetic.Image, Kinetic.Shape);
Kinetic.Global.extend(Kinetic.Line, Kinetic.Shape);
Kinetic.Global.extend(Kinetic.Path, Kinetic.Shape);
Kinetic.Global.extend(Kinetic.Polygon, Kinetic.Shape);
Kinetic.Global.extend(Kinetic.Rect, Kinetic.Shape);
Kinetic.Global.extend(Kinetic.RegularPolygon, Kinetic.Shape);
Kinetic.Global.extend(Kinetic.Sprite, Kinetic.Shape);
Kinetic.Global.extend(Kinetic.Star, Kinetic.Shape);
Kinetic.Global.extend(Kinetic.Text, Kinetic.Shape);
Kinetic.Global.extend(Kinetic.TextPath, Kinetic.Shape);
Kinetic.Global.extend(Kinetic.Wedge, Kinetic.Shape);

关于javascript - 在 Kinetic.js 中,原型(prototype)节点不会影响所有子节点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15076170/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com