Recentemente mi sono imbattuto in dover caricare una funzione javascript in drupal e doverla attivare al momento del completamento del caricamento della pagina.
Poichè non si può direttamente scrivere nell’html della pagina (quindi non possiamo utilizzare il tag <body onload()> ) mi sono dovuto un pò “arrangiare” per far funzionare la cosa.
Utilizzando la funzione drupal_set_html_head() possiamo andare direttamente a scrivere del codice html all’interno del tag HEAD della pagina; in questo modo possiamo inserire un’ulteriore funzione javascript che carichi il nostro javascript al momento del caricamento della pagina.
Di seguito vi posto parte del blocco che ho creato:
…..
function slidingmenu_block($op = ‘list’,$delta = 0, $edit = array()) {
switch($op) {
case ‘list’:
$blocks[0][’info’] = t(’Sliding Menu’);
return $blocks;
case ‘view’:drupal_add_css( (drupal_get_path(’module’,’slidingmenu’).’/css/slidemenu.css’), ‘module’, ‘all’);
drupal_add_js( (drupal_get_path(’module’,’slidingmenu’).’/js/slidemenu.js’), ‘module’, ‘header’);drupal_set_html_head(”<script type=\”text/javascript\”> window.onload = function(){slideMenu.build(’sm’,200,10,10,1);} </script>”);
…..



