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");
});
这是我的 Scroller 代码,但是当我尝试运行它时,它给出以下错误:“Uncaught TypeError:this.slideTo 不是函数”
When setInterval
调用一个函数,它用context (or this
的价值window
(即它在全局范围/上下文中调用该函数)。您需要确保里面的上下文nextSlide
是正确的。
Try:
setInterval(self.nextSlide.bind(self), 1000);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)