Option 1:
Pass this back when calling callback() :
(function ($) { $.fn.bondye = function (options) { var settings = $.extend({ callback: function () {} }, options); return this.each(function () { $(this).addClass('test');
Here's a working fiddle .
Option 2: (desirable)
(function ($) { $.fn.bondye = function (options) { var settings = $.extend({ callback: function () {} }, options); return this.each(function () { $(this).addClass('test'); settings.callback.call(this); settings.callback(); }); }; })(jQuery); $(".myDiv").bondye({ callback: function () { $(this).removeClass("test"); } });
Here's a working fiddle .
source share