我正在使用p5.js来使用与sprite的按钮交互。我只是通过for循环有一个关于按钮创建的快速问题。我知道我可以轻松地为4个按钮中的每个按钮创建单独的对象,但我想看看它是如何以这种方式工作只是为了缩短代码。
我想让按钮每个调用一个函数“puton(i)”,在for循环中增加一个i,这样每个按钮可以做一些不同的事情(在我的情况下是穿上不同的衣服)。但是,我收到了这个错误:
vertex.property(field).value()
我真的不太了解参数在javascript中是如何工作的,所以我可能会接近这个非常错误,所以我们也会欣赏一些更有效的方法(除了对每个按钮进行硬编码)。
提前致谢!
Uncaught TypeError: Cannot read property 'bind' of undefined.
答案 0 :(得分:1)
.mousePressed()
将函数作为其参数,而不是函数调用。
官方文档中有一个很好的例子:https://p5js.org/reference/#/p5.Element/mousePressed
这适用于您的情况:
change.mousePressed(puton);
甚至这个:
change.mousePressed(function(e) {
console.log(e);
});