¿Cómo crear un plugin jQuery con métodos?
Estoy intentando escribir un complemento de jQuery que proporcionará funciones / métodos adicionales al objeto que lo llama. Todos los tutoriales que leí en línea (he estado navegando durante las últimas 2 horas) incluyen, como máximo, cómo agregar opciones, pero no funciones adicionales.
Esto es lo que estoy buscando hacer:
// format div para que sea un contenedor de mensajes llamando al complemento para ese div
$("#mydiv").messagePlugin();
$("#mydiv").messagePlugin().saySomething("hello");
O algo por el estilo. Esto es lo que se reduce a: yo llamo al complemento, luego llamo a una función asociada con ese complemento. Parece que no puedo encontrar una manera de hacer esto, y he visto muchos complementos hacerlo antes.
Esto es lo que tengo hasta ahora para el plugin:
jQuery.fn.messagePlugin = function() {
return this.each(function(){
alert(this);
});
//i tried to do this, but it does not seem to work
jQuery.fn.messagePlugin.saySomething = function(message){
$(this).html(message);
}
};
¿Cómo puedo lograr algo así?
¡Gracias!
Actualización 18 de noviembre de 2013: he cambiado la respuesta correcta a la de los siguientes comentarios y upvotes de Hari.