Ho un aspx che ha la seguente funzione javascript in esecuzione durante l'evento onload del corpo.Agganciare un evento javascript al caricamento della pagina
<body onload="startClock();">
Comunque, sto impostando l'aspx per utilizzare una pagina master, in modo che il tag body non esiste nel aspx più. Come faccio a registrare la funzione startClock da eseguire quando viene colpita la pagina e continuo ad usare una masterpage?
+1 - Ero troppo pigro per scrivere questa risposta, ma questo è il modo in cui suggerirei che qualcuno lo facesse, con le stesse ipotesi che inizialmente asserite. –
Ovviamente, vorrei astrarre i dettagli un pochino - si spera che sia ovvio per l'OP ... –
Mi manca qualcosa di ovvio qui, ma dove va il blocco "se" del codice? Non puoi semplicemente scaricarlo in un tag
Inserire questo in qualsiasi parte del corpo della pagina:
fonte
2009-06-03 19:02:21
L'unico problema di questo è se l'altro codice, anch'esso inserito nella pagina composita, fa la stessa cosa: ultimo nelle vittorie. Ridefinire window.onload funziona, ma occorre fare attenzione per assicurarsi che non sia già stato definito! –
Molto vero! Grazie del promemoria. –
Ho visto il codice che verifica per vedere se 'window.onload' è definito, e se è così, fa riferimento ad esso in una variabile temporanea, quindi" chiama "quella variabile all'interno del * nuovo *' window.onload'. –
o utilizzando prototipo
fonte
2009-06-03 19:03:29 George
Il modo più pulito è utilizzare un framework javascript come jQuery. In jQuery si potrebbe definire la funzione sotto carico nel seguente modo:
Oppure, se non ti piace il breve
$();
stile:fonte
2010-05-10 07:25:35 ThiefMaster
concordato. In realtà ho iniziato a usare jQuery alcuni mesi dopo aver postato questa domanda (quasi un anno fa adesso), e mi piace. – Jagd
Le versioni più recenti di jQuery richiedono lo stile $ (document) .ready (...). –
No. In mai versioni il comportamento di '$()' è cambiato, ma '$ (some_function)' non è cambiato. – ThiefMaster