jQuery: Plugin Methods, como posso passar as coisas para eles?

Ultimamente, tenho escrito muitos plugins minúsculos para meus projetos na Web, mas ainda sou iniciante na criação de plugins.

Eu tenho lido bastante sobre plugins jquery, mas simplesmente não consigo entendermethods.

Aqui está a aparência dos meus plugins atuais:

(function($){

    $.fn.extend({ 

        myHelper: function(options) {

            var defaults = {
                some: 'defaults'
            }

            var options =  $.extend(defaults, options);

            return this.each(function() {
                var o = options;

                function next(target) {
                    // do something like slide to the next image in a slideshow 
                    // based on the target and count passed in
                    slide('right');
                }
                function prev(target) {
                    slide('left');
                }

                function slide(direction) {
                    // animation for sliding in the next one
                    $('ul > li.current').animate({ … }, 800);
                }

                // doesn't exactly make sense but its just to illustrate what I need to do.
                $('.next').click(next($('ul > #example'));


            });
        }
    });

})(jQuery);

O que eu sou depois agora e pensei que o método era o caminho a seguir aqui ... é basicamente não ter todas essas funções nomeadas para pequenos pedaços de funcionalidade e, em vez disso, definir métodos comonextSlide, prevSlide, reset, loop Eu acho que você entendeu a ideia ...

Você deve ter notado que eu passo coisas como o alvo para a função (next() por exemplo) e depois chame onext() como algo autônomo.

Agora quero começar a fazer isso simplesmente com um método para fazer tudo isso e me permitir escreverdentro meuplugin.js arquivar algo como$(o.nextBtn).nextSlide(); por exemplo.

Mas como escrevo um método que aceita argumentos como otarget neste exemplo?

Todos os exemplos e tutoriais para os métodos que encontrei até agora basicamente não tinham a opção de aceitar argumentos na função do método. Isso é possível?

Idealmente, eu gostaria de tornar essas funções encadeadas dentro do meu plugin também, mas isso está começando a passar por cima da minha cabeça.

Se você sabe como criar algo que faz o que eu quero realizar de maneira organizada e organizada ou tem um bom tutorial, devo compartilhar.

Obrigado.

questionAnswers(1)

yourAnswerToTheQuestion