Evento onload su un solo nodo

4 contenuti / 0 new
Ultimo contenuto
Evento onload su un solo nodo

salve,
vi spiego il mio problema anche se ho le idee ancora un pò confuse (quindi correggetemi se sbaglio il ragionamento).
Siccome sto creando una cartina e vorrei che le immagini per il rollover vengano precaricate durante il caricamento di una pagina,
voglio utilizzare l'evento "onload" con la sintassi <body onload="mia-funz-javascript()" />
includendo quindi questo evento nel body di un nodo. Il problema è che non posso richiamare tale evento nel Corpo di un nodo (perchè non viene riconosiuto come tale) quindi ho provato ad aggiungerlo nel file page.tpl.php tra i tag e tutto funziona.
Solo che a questo punto le immagini vengono caricate in tutte le pagine! quindi volendo io caricarle solo nella pagina interessata, cosa devo fare??
C'è un modo per applicare tale evento nel corpo del nodo o qualche if da applicare sulla page.tpl.php?
io pensavo a qualcosa da aggiungere al body del page.tpl del tipo:

<?php
 
if ($_SERVER['REQUEST_URI'] == '/mionodo')
    {
 
//aggiungi al mionodo onload="".....
}
?>

aiuto :)
grazie mille

Hai già trovato la risposta sull'altro thread. Comunque, grazie a jQuery (incluso in Drupal), non hai bisogno di usare body onload, ma puoi aggiungere $(document).ready() in un file JS incluso o nell'head del documento: http://www.learningjquery.com/2006/09/introducing-document-ready

Ovviamente, sia l'inclusione di un file JS esterno che l'aggiunta di uno script all'head possono essere gestiti tramite drupal_add_js

grazie della puntuale risposta pinolo, cmq ho risolto in questo modo, utilizzando la onload (visto che l'ha presa dovrebbe funzionare no?).
Ho aggiunto al page.tpl.php del mio tema le seguenti righe:

<?php
if ($_SERVER['REQUEST_URI'] == '/mio-nodo'):
?>

body onload = "MM_preloadImages('path/immagine.gif' )"

<?php
 
endif;
?>

sono sicuro che il codice è incluso solo nel nodo impostato, ma non sono ancora sicurissimo che le immagini siano veramente precaricate.
Voi pensate che funzioni così? o devo sostituire con la $(document).ready()?

Grazie :)

nessuno mi sa dare una manina? mi sapete dire almeno se questa "onload" funzioni o se devo utilizzare direttamente la $(document).ready() ?
perchè così a occhio, non mi sembra che funzioni la onload..
Ah e poi se mi potete suggerire in che modo utilizzo la $(document).ready() perchè non ho ancora ben capito... :)
grazie mille