Agregar JavaScript al final de una página

15

¿Cómo puedo agregar scripts JavaScript al final de una página, en mi plantilla?

Onita
fuente
array('type' => 'inline', 'scope' => 'footer', 'weight' => 5). Puede usar Peso para ajustar su archivo en el pie de página.
kalidasan

Respuestas:

18

Creo que puedes hacerlo con drupal_add_js () ; ¡parece que la opción clave de alcance es tu amigo!

Pol Dellaiera
fuente
55
Lo estoy usando:drupal_add_js($theme_path.'/js/jquery.easing.1.3.js', array('type' => 'file', 'scope' => 'footer')); ?>
Onita
@Onite donde tenemos que poner esto? en html.tpl.php?
John
2
En page.tpl.php
Onita
1
¿Es el mismo código si quiero adjuntar un archivo js en template.php?
CocoSkin
¿No se sobrescribirá esto cuando se actualice el tema?
isherwood
6

En tu tema html.tpl.phphay una línea <?php print $scripts; ?>.

Esa es la línea que imprime el javascript en su página.

Puede moverlo a cualquier lugar que desee, por ejemplo, colocarlo después de todo lo demás, justo antes de la bodyetiqueta de cierre para que todos sus scripts se carguen en la parte inferior.

Alex Weber
fuente
2
No sugeriría imprimir $scriptsen la parte inferior de html.tpl.php; esa variable incluye las etiquetas de script para jQuery y otros archivos JavaScript de Drupal. ¿ $scriptsContiene etiquetas HTML que se pueden generar fuera <head>?
kiamlaluno
1
no, los scripts solo tienen etiquetas 'script src' y javascript en línea, se hace en un par de plantillas y funciona de maravilla, lo he hecho en Zentropy, mi tema base html5: drupal.org/project/zentropy
Alex Weber
3
Algunos archivos JS de los módulos contrib pueden asumir que están incluidos en la página <head>. Por ejemplo, cuando están definiendo variables globales o funciones llamadas por un script en línea (incluso si es una mala práctica).
Pierre Buyle,
5

Puedes intentar agregar el archivo así:

drupal_add_js('sites/all/themes/themname/js/skrollr.js', array('scope'=>'footer'));
Mahipal Purohit
fuente