2011-02-26 11 views
6

tengo una función que acepta el elemento que necesita para operar como un parámetro element

function changeColor(element){ 
    $(element).find('.middleBox').each(function(){ 
     $(this).//do some stuff that does not matter now; 
    }); 
} 

y yo llámelo de esta manera

changeColor($(document)); //this applies it to the whole document 
changeColor($('#sectionOne')); //this applies it to only part of the document 

Quiero cambiarlo desde el formato donde acepta su objeto como un param a este formato. ¿Cómo lo hago?

$('#sectionOne').changeColor(); 
$(document).changeColor(); 

Respuesta

6

Como dijo Nikita, necesita escribir un plugin jQuery. Aquí hay un ejemplo básico, que debería ser suficiente para lo que está tratando de hacer:

(function($) { 
    $.fn.changeColor = function() { 
     return this.each(function() { 

      $(this).find('.middleBox').each(function() { 
       $(this).//do some stuff that does not matter now; 
      }); 

     }); 
    }; 
})(jQuery); 
+0

Estoy de acuerdo con su respuesta anterior. Pero qué, si no estoy interesado en usar jquery en mi proyecto, entonces? En realidad estoy usando Angular JS. Esperando su respuesta ... –

+1

@vijayshegokar Le recomiendo que cree una nueva pregunta para que la gente pueda obtener puntos por responderla. –

+0

He creado una nueva pregunta. Por favor, consulte http://stackoverflow.com/questions/29504841/how-to-create-a-function-on-html-element-instead-passing-element-as-parameter –

1

Quiere crear un plugin jQuery. La gente de jQuery proporciona a tutorial para eso.

Si no le gusta leer mucho, puede copiar y pegar prácticamente maxHeight example y reemplazar la lógica en el interior.

Cuestiones relacionadas