Main logo La Página de DriverOp

Cargar dinámicamente archivos JavaScript.

En este artículo se verá cómo cargar un archivo .js dinámicamente, especialmente útil para ejecutar código JavaScript luego de una petición Ajax.

Índice

Planteamiento del problema

Habrá sucedido más de una vez que se necesita cargar un archivo JavaScript no al momento de cargarse la página sino después de que la página ha sido cargada.

El caso paradigmático de esta situación es cuando se quiere que código JavaScript que está en un archivo HTML se ejecute después de que ese archivo se cargó mediante una petición Ajax.

Lo que se habrá oido o leído muchas veces es que "Ajax no ejecuta JavaScript" y es realmente cierto: código JavaScript que está embebido en un archivo HTML no se ejecuta si éste se carga mediante Ajax.

Entonces ¿cómo se soluciona este problema?. Pues la solución es separar el código ejecutable JavaScript del código HTML poniéndolo en archivos separados y cargar el archivo .js (que contiene el código JavaScript) dinámicamente.

En este artículo se verá cómo realizar esta operación.

Ventajas.

La ventaja de cargar código JavaScript dinámicamente reside en no saturar el servidor pidiéndole material que no es seguro que se vaya a usar.

Por ejemplo, supongamos que un sitio tipo blog ofrece la posibilidad de comentar los artículos y se dispone de un formulario para que el visitante escriba el comentario.

No todos los visitantes del sitio comentarán el artículo. Por lo que cargar el formulario y el código JavaScript asociado para todos independientemente de si hará el comentario o no, podría ser un desperdicio de ancho de banda.

En cambio, si el visitante solicita publicar un comentario y el formulario se carga mediante Ajax, esa petición sí será útil.

Pero como se comentó al inicio, Ajax no ejecuta JavaScript y parece ser que no queda más remedio que cargar el o los archivos .js al inicio de la página como se hace normalmente con el tag