8 mars 2008

namespacing avec jquery

A un moment donné j'avais besoin de "namespacé" mes fonctions et plugins avec jquery donc j'avais posé la question sur le groupe jquery.

Voici le code permettant d'avoir la fonction namespace:
$.namespace = function(ns, functions){
$.fn[ns] = function() {return this.extend(functions)}
}
$.namespace('$', $.fn) // the default namespace


Une fois, cette fonction déclarée vous pouvez déclarer les namespaces que vous desirez.

exemple:
$.namespace('mon_namespace', {
ma_fonction: function(){
$(this).each(function(){alert($(this).attr('id'))})
}
})

que vous appelerez comme ceci:
$('#mon_div').mon_namespace().ma_fonction()

Aucun commentaire: