25
Ago/101
Ago/101
Cargando javascript bajo demanda con jquery simple
Cargando javascript bajo demanda con jquery simple…
Cansado de buscar librerias de load javascript on demand y viendo que son muy pesadas programe mi funcion para propositos simples. La libreria toma el path del primer script como url para cargar los js relativos a esta.
plugin:
var using = (function(){ var loaded = {}, scriptUrl = $('script').attr('src').replace(/(\/|^)[\w\.\-]+$/, '$1'); return function(lib, callback, scope){ lib = $.isArray( lib ) ? lib: [ lib ]; var cb = function() { lib.shift(); loaded[this.url] = true; if( lib.length === 0) { callback.call(scope); } }; $.each(lib, function(){ var u = scriptUrl + this.replace(/(\.js)?$/,'.js'); if( loaded[u] ) { cb(); } else { $.getScript( u, cb); } }); }; })();
usage
using('milibreria.js', function(){ alert('milibreria.js is loaded'); });
using(['milibreria1.js', 'milibreria2.js'], function(){ alert('milibreria1.js and milibreria2.js are loaded'); });
2:41 pm on Agosto 25th, 2010
wwwwwwwwwwwww