我正在尝试在页面上创建多个滑块实例。每个滑块应该知道它当前正在查看哪个幻灯片。当我更新slide
属性时,似乎我是在更改类而不是实例。这使我认为我在公共init()
函数中没有正确实例化。我做错了什么?
var MySlider = (function() {
'use strict';
var animating = 0,
slides = 0, // total slides
slider = null,
slide = 0, // current slide
left = 0;
function slideNext(e) {
if ((slide === slides - 1) || animating) return;
var slider = e.target.parentNode.children[0],
x = parseFloat(slider.style.left);
animate(slider, "left", "px", x, x - 960, 800);
slide++;
}
return {
init: function() {
var sliders = document.querySelectorAll('.my-slider'),
l = sliders.length;
for (var i = 0; i < l; i++) {
sliders[i] = MySlider; // I don't think this is correct.
slider = sliders[i];
buildSlider(slider);
}
}
}
})();
MySlider.init();
一次,然后我的函数将循环遍历页面上匹配的元素,并为每个元素创建一个实例。我不希望他们手动创建实例。 - Jezen Thomas