我在对象原型上设置了一个方法。我希望函数在单击按钮时运行(该按钮在dom中,标识为“ step”)

GoL.prototype.step = function () { // ...


每当单击按钮时,我都会获取GoL.prototype.step来执行以下代码。如何在原型方法“步骤”上设置点击事件?

最佳答案

只需创建GoL的实例,然后将click处理程序绑定到“步骤”按钮。

var instanceOfGoL = new GoL(); // only you know how to correctly initialize this
var button = document.getElementById('step');
button.addEventListener('click', function () {
    instanceOfGoL.step();
});


您需要将其包装在一个函数中并使用.call(),因为事件处理程序会剥离作用域的成员函数,并且需要重新填充它。

无需提供原型功能的代码,您的问题与它无关。

08-08 05:40