【发布时间】:2016-09-11 19:56:16
【问题描述】:
我知道这可能看起来是重复的,但这里不是这样。 我正在尝试使用 OOP 方法创建一个简单的 Slider。 所以这是我到目前为止所得到的:
function Slider(){
this.totalSlides = 3;
this.sliderImagesRoot = 'images/slider/';
this.imagesLinks = [this.sliderImagesRoot + '1.png',this.sliderImagesRoot + '2.png',this.sliderImagesRoot + '3.png'];
this.titles = ['State of the Art', 'Best staff kk', 'Toratos'];
this.descriptions = ['First description, bla bla bla', 'werewr','Toraki'];
this.slideDelay = 1200;
this.currSlide = 1;
this.initSlider = function(){
var createSlide = this.createSlide();
var sliding = setInterval(function(createSlide){
createSlide();
}, 500);
}
this.createSlide = function(){
alert("er");
}
}
我认为这与传递给函数有关,有什么想法吗? 顺便说一下,这是我第一次尝试在JS中实现OOP。
【问题讨论】:
-
this.createSlide未定义。 -
这个“这个”不应该存在,它是我尝试的东西的剩余部分。我刚刚编辑了它,没有这个重新阅读它。
-
@Xufox 对不起,我没有偶然发现这篇文章,我现在就去看看。
-
createSlide是一个函数参数,但该函数不带任何参数调用。试试setInterval(function(createSlide){…}, 500, createSlideFunction);其中createSlideFunction是声明和定义的函数。
标签: javascript jquery oop setinterval