如何在插件jQuery之前和之后创建回调选项?

时间:2013-07-23 11:40:15

标签: jquery plugins callback

如何在插件jQuery之前和之后创建回调选项???

$('#slide').myPlugin({
   onBefore:function(){
      alert('Start slide images');
   },
   onAfter:function(){
      alert('End slide !');
   }
});

请帮忙演示!

2 个答案:

答案 0 :(得分:0)

$('#slide').slider({
  start:function(event, ui){
  alert('Start slide images');
},
stop:function(event, ui){
  alert('End slide !');
 }
});

请参阅link

答案 1 :(得分:0)

完全取决于您如何构建插件代码。最简单的情况是:

(function($) {

  // Constructor
  var MyPlugin = function(element, options) {
    this.element = element
    this.options = options
    // ...
  }

  MyPlugin.prototype.slide = function() {
    this.options.onBefore && this.options.onBefore.call(this)
    // Do your stuff
    this.options.onAfter && this.options.onAfter.call(this)
  }

  // Default options
  var defaults = {}

  // jQuery chainable
  $.fn.myPlugin = function(options) {
    options = $.extend(defaults, options);

    return this.each(function() {
      $(this).data('myPlugin', new MyPlugin(this, options))
    })
  } 

}(jQuery))

但是,你最好使用event(而不是回调)来实现这种功能。