使用匿名函数将事件绑定到KineticJS对象

时间:2014-09-30 22:25:12

标签: javascript kineticjs

我正在使用Canvas和KineticJS开展项目。我加载/创建了许多节点和边缘,并且在各种情况下与这些节点和边缘交互时具有所需的功能。

目前,我正在使用匿名函数创建事件处理程序,因为它们是使用匿名函数创建的。像这样:

Node.prototype.setupNode = function(x, y) {

    this.visual.on('tap', function(e) {
        console.log(this.id);
    });

    ...
}

如果我为每个项目绑定了几个事件处理程序,其中一些是相当多的代码行,并且我经常绑定几百个节点和边缘对象,是否有更合理的绑定方式这些事件对这些对象,以便我可以提高性能,减少加载时间和资源使用?

提前感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

您可以创建一个命名函数,然后将其引用传递给事件绑定函数,如下所示:

function handleTap (e) {
   //your code
}

Node.prototype.setupNode = function(x, y) {
    this.visual.on('tap', handleTap);
    ...
}