Mootools: Assets.js

19 de Agosto, 2007

Assets.js trae algunos métodos que nos permiten inyectar en nuestra página elementos script, link, como así también precargar imágenes. Si querés podés pasar directamente a los ejemplos con Assets.js de Mootools o seguir leyendo la explicación de cada uno de sus métodos.

Asset.javascript

Asset.javascript nos permite inyectar scripts en cualquier momento. Como primer parámetro debemos indicar la ruta hacia nuestro fichero de javascript, como segundo parámetro, opcionalmente, podemos indicar una serie de atributos para nuestro elemento script.

1
2
3
4
5
new Asset.javascript('script.js', 
{
        tag: 'unTag',
        id: 'script1'
});

El código anterior insertaría en nuestra pagina lo siguiente:

1
<script tag="unTag" id="script1" src="script.js"></script>

Asset.css

Asset.css funciona de la misma manera que Asset.javascript, pero inserta un elemento link de css. Es decir, podemos cambiar el aspecto de nuestro sitio con un solo click y sin recargar la página.

1
2
3
4
new Asset.css('estilo1.css', 
{
        id: 'unId'
});

El código anterior produce:

1
< link id="unId" href="estilo1.css" type="text/css" media="screen" rel="stylesheet">

Asset.image

Asset.image nos permite precargar una imagen, la cual no aparecerá hasta que la insertemos manualmente en algún sitio de nuestro código. Los parámetros son los mismos que en Asset.javascript, el primero es la url de la imagen y el segundo es un objeto con los tags que queramos para nuestro nuevo elemento.

1
2
3
4
var imagen = new Asset.image('mootools.jpg', 
{
        'class': 'imagenes'
});

En la variable imagen tendremos nuestro nuevo elemento img el cual es muy sencillo de insertar en nuestra pagina:

1
$('id-de-nuestro-div').adopt(imagen);

Asset.images

De similar funcionamiento que Asset.image, Asset.images nos permite cargar varias imágenes en un solo paso retornando al final un arreglo con todos los elementos img que fueron cargados. El primer parámetro es un arreglo con las rutas de las imagenes que queremos cargar, el segundo parámetro es un objeto con las funciones para los eventos onProgress y/o onComplete.

onProgress es una función que se ejecuta cada vez que se carga una imagen de nuestro arreglo. Trae como parámetro el valor del contador de imágenes cargadas hasta el momento y this, dentro de la función, es el elemento img recientemente cargado.

1
2
3
4
5
6
7
8
var aCargar = ['mootools1.jpg', 'mootools2.jpg', 'mootools3.jpg', 'mootools4.jpg', 'mootools5.jpg'];
var imagenes = new Asset.images(aCargar,
{
	onProgress: function(contador)
	{
		$('id-de-nuestro-div').adopt(this);
	}
});

onComplete es la función que se ejecuta cuando todas las imágenes ya fueron cargadas.

1
2
3
4
5
6
7
8
9
10
11
var aCargar = ['mootools1.jpg', 'mootools2.jpg', 'mootools3.jpg', 'mootools4.jpg', 'mootools5.jpg'];
var imagenes = new Asset.images(aCargar,
{
	onComplete: function()
	{
		imagenes.each(function(el)
		{
			$('id-de-nuestro-div').adopt(el);
		});
	}
});

Visita los ejemplos con Assets.js para quitarte las dudas.

Articulos Relacionados

7 comentarios en “Mootools: Assets.js”

  1. Arcadio Dijo:

    interesante documentacion…. como siempre excelente.

  2. Federico Dijo:

    Gracias por el comentario Arcadio :-D. Cada vez se me complica mas el tema de ser simple en las explicaciones, pero bueno, depende el tema.

    Saludos.

  3. Julian Dijo:

    Me interesó el Asset de CSS. Necesito crear un javascript que detecte la resolucion del usuario y de esta manera cargue la página con un CSS u otro. Se podria hacer de esta manera, no?.
    Como sería? realmente se poco y nada de javascript y este metodo que posteas no lo habia visto nunca.

    Espero respuesta, y desde ya, muchas gracias.

  4. Jose Dijo:

    Mágnifica explicación. Sólo una pregunta. Asset soluciona el tema de no poder ejecutar scripts en una página cargada mediante ajax ???. Si fueras tan amable en echar un vistazo a esto:

    Te lo agradecería. Un fuerte abrazo desde España.

  5. Jose Dijo:

    Perdón.. la página de pruebas es:

    Prueba ajax

  6. Federico Dijo:

    Hola Jose, no, asset no es para eso. Pero la solucion la puedes encontrar por el lado de Request o Request.HTML, una de las opciones es “eval scripts” y te permite ejecutar el javascript que viene por AJAX.

    De todos modos fijate, aqui en mi blog hay una explicacion sobre Ajax.js que es el script de la version anterior y que fue renombrado a Request.HTML, han cambiado el nombre y poco mas asi que seguro te sirve este tutorial tambien.

    Un saludo

  7. Byron Dijo:

    El metodo adopt me genera errore al momento de utilizarlo en paginas con scriptmanager del ajaxtoolkit alguna idea?

Deja tu comentario

XHTML: Puedes usar estos tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>

El blog funciona con Wordpress y Simpla theme