jQuery插件外部函数

And*_*dez 1 jquery jquery-plugins

我正在构建我的第一个jQuery插件,幻灯片.它工作正常,我可以作为参数传递,图像移动的方向,间隔和速度.
现在我想添加一个启动和停止功能,以创建或销毁

obj = window.setInterval()
Run Code Online (Sandbox Code Playgroud)

我用来改变图像,所以我可以访问外面的那些功能:

slideshow = $('#slideshowstrip').slideshow();
slideshow.start();
slideshow.stop();
Run Code Online (Sandbox Code Playgroud)

JKS*_*JKS 5

您可以考虑使用小部件工厂将插件编写为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;
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

然后你可以像这样调用这些函数: $("#pictures").slideshow("stop");