Ver Mensaje Individual
  #2 (permalink)  
Antiguo 12/05/2012, 13:08
Avatar de Naahuel
Naahuel
 
Fecha de Ingreso: marzo-2011
Ubicación: localhost
Mensajes: 796
Antigüedad: 13 años, 9 meses
Puntos: 192
Respuesta: problema creacion de plugin jquery

Te hago un par de correcciones.

1.- Tratá siempre de usar $(this) en lugar de this. De esta forma convertís el objeto a un objeto jQuery y podés aplicarle sus métodos.

Esto no funciona:
Código Javascript:
Ver original
  1. var base=this;
  2. base.html(probador);

dado que base no es un objeto jQuery.

2.- Para que tu plugin funcione con todos los elementos que se pasa en el selector, tenés que usar .each(). De esta forma la acción se ejecuta para cada elemento.

Te paso el plugin con esas dos correcciones. Analizalo y fijate cuales son los cambios.

Código Javascript:
Ver original
  1. (function($){
  2.         $.fn.prueba = function(options)
  3.         {
  4.             defaults={
  5.                 texto:'texto default'                      
  6.                 };
  7.  
  8.             var options= $.extend(defaults,options);
  9.            $(this).each(function(){
  10.                 var base=$(this);
  11.                 var probador;
  12.      
  13.                 this.mostrarTexto = function(texto){
  14.                     probador = $('<div></div>');//genera el contenedor de texto
  15.                     probador.html(texto);//genera el texto en el contenedor
  16.                     base.html(probador);
  17.                 }
  18.                
  19.      
  20.                 this.mostrarTexto(options.texto);
  21.      
  22.                 probador.click(function(){
  23.                     base.hide('slow');
  24.                 });
  25.            });
  26.         }
  27. })(jQuery);
__________________
nahueljose.com.ar