我正在构建我的第一个 jQuery 插件,一个幻灯片。它工作正常,我可以作为参数传递图像移动的方向、间隔和速度。
现在我想添加一个开始和一个停止函数,以创建或销毁
obj = window.setInterval()
我用来更改图像,这样我就可以访问外部的这些功能,例如:
slideshow = $('#slideshowstrip').slideshow();
slideshow.start();
slideshow.stop();
最佳答案
您可能会考虑使用 the widget factory 将插件编写为 jQuery UI 小部件。 .
使用小部件,您可以轻松添加多种功能:
$.widget("ui.slideshow", {
options: {
timer: false,
interval: 1000
},
_init: function(){
this.start();
},
start: function(){
this.options.timer = setInterval(function(){}, this.options.interval);
},
stop: function(){
if (this.options.timer) {
clearInterval(this.options.timer);
this.options.timer = false;
}
}
});
然后您可以像这样调用这些函数:
$("#pictures").slideshow("stop");
关于jQuery 插件外部函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4845053/