martes, 15 de septiembre de 2009

Carga de scripts dinamica

Para cargar un script de modo dinámico, basta hacer lo siguiente:
var s = document.createElement("script");
s.src = 'script-location/script-name.js';
s.type="text/javascript";
document.getElementsByTagName("head")[0].appendChild(s); 
Este código lo carga al final del head.

Si el script no carga (o si aparece la petición como abortada), puede deberse al modo en que se ha invocado. Si, por ejemplo, se hace la petición en un anchor:
<a href='location' onclick='cargaScript()'>cargar</a>
al iniciar la carga del script, se ejecuta inmediatamente el href. Si el href no hace referencia al propio documento (es decir, es una url, un javascript inline o algo que no sea '#' o similar), se aborta la operación y el script no carga.

No hay comentarios: