Javascript原型访问另一个原型函数
这是我的滚动条代码,但当我尝试运行它时,它会给我以下错误:“uncaughtypererror:this.slideTo不是函数”当Javascript原型访问另一个原型函数,javascript,prototype,Javascript,Prototype,这是我的滚动条代码,但当我尝试运行它时,它会给我以下错误:“uncaughtypererror:this.slideTo不是函数”当setInterval调用函数时,它会使用窗口的上下文(或此值)调用它(即,它在全局范围/上下文中调用函数)。您需要确保nextSlide中的上下文是正确的 尝试: 您可能还希望保存setInterval调用的返回值,以便稍后清除该间隔 function Scroller(id){ this.ID = id; this.obj = $("#"+id)
setInterval
调用函数时,它会使用窗口的上下文(或此值)调用它(即,它在全局范围/上下文中调用函数)。您需要确保nextSlide
中的上下文是正确的
尝试:
您可能还希望保存setInterval调用的返回值,以便稍后清除该间隔
function Scroller(id){
this.ID = id;
this.obj = $("#"+id);
this.currentSlide = 1;
var self = this;
setInterval(self.nextSlide, 1000);
}
Scroller.prototype.nextSlide = function(){
this.slideTo(this.currentSlide+1);
}
Scroller.prototype.slideTo = function(slide){
// slide = (slide+this.obj.children().size()-1) % this.obj.children().size()+1;
// $("#"+this.ID+" > *:first-child").stop().animate({"margin-left": "-"+this.obj.get(0).offsetWidth*(slide-1)}, 1000);
// currentSlide = slide;
}
$(document).ready(function(){
new Scroller("actielist");
});
setInterval(self.nextSlide.bind(self), 1000);