我正在使用Canvas和KineticJS开展项目。我加载/创建了许多节点和边缘,并且在各种情况下与这些节点和边缘交互时具有所需的功能。
目前,我正在使用匿名函数创建事件处理程序,因为它们是使用匿名函数创建的。像这样:
Node.prototype.setupNode = function(x, y) {
this.visual.on('tap', function(e) {
console.log(this.id);
});
...
}
如果我为每个项目绑定了几个事件处理程序,其中一些是相当多的代码行,并且我经常绑定几百个节点和边缘对象,是否有更合理的绑定方式这些事件对这些对象,以便我可以提高性能,减少加载时间和资源使用?
提前感谢任何帮助。
答案 0 :(得分:0)
您可以创建一个命名函数,然后将其引用传递给事件绑定函数,如下所示:
function handleTap (e) {
//your code
}
Node.prototype.setupNode = function(x, y) {
this.visual.on('tap', handleTap);
...
}