jQuery插件外部函数

时间:2011-01-30 19:45:49

标签: jquery jquery-plugins

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

obj = window.setInterval()

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

slideshow = $('#slideshowstrip').slideshow();
slideshow.start();
slideshow.stop();

1 个答案:

答案 0 :(得分:5)

您可以考虑使用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");