Providing the method name as the first parameter is a bit awkward,
perhaps looking at the alternatives would help:

Add namespaces to jQuery.  This isn't very jQuery-like.  Example: $
(el).tabs.add(url, label).show();

Add a new jQuery method for every plugin instance method.  This
pollutes the jQuery namespace, so this should only be done when it
really makes sense.  Example: $(el).addTab(url, label);

Use events.  You can bind custom events in a namespace and then have
users interact with your plugin by triggering those events.  Example: $
(el).trigger('add.tabs', url, label);

There may be other approaches as well.

The jQuery UI approach allows plugins to expose as many methods as
they want while only using one method in the jQuery namespace.

Reply via email to