通过 setInterval 事件调用类原型方法
- 论坛
- 通过 setInterval 事件调用类原型方法
12 浏览
通过 setInterval 事件调用类原型方法
我有一个简单的JavaScript类。这个类的一个方法使用setInterval函数设置了一个定时器。我想要每次事件触发时调用的方法是在同一个类中定义的。问题是,我如何将这个方法作为参数传递给setInterval函数呢?一种尝试是setInterval('this.showLoading(), 100'),但是不起作用。这个方法访问类的属性,所以我需要使用'this'引用。以下是示例代码:
function LoadingPicture(Id) { this.imgArray = null; this.currentImg = 0; this.elementId = Id; this.loadingTimer = null; } LoadingPicture.prototype.showLoading = function() { if(this.currentImg == imgArray.length) currentImg = 0; document.getElementById(this.elementId).src = imgArray[this.currentImg++].src; } LoadingPicture.prototype.StartLoading = function() { document.getElementById(this.elementId).style.visibility = "visible"; loadingTimer = setInterval(this.showLoading.bind(this), 100); }