Newsgroup: it.comp.www.html
Titolo: una regola, please

Devo ottimizzre un codice sorgente html per una campagna di web promotion e
mi trovo cosě a dover liberare spazio all'inizio del sorgente medesimo.
Nella pagina che ho tra le mani vi sono molti tag <script... e <style....
tra <head> ed </head>: ho provato a spostare tutto alla fine del  corpo,
poco prima di </body> e funziona tutto come prima. Mi domando: come mai si
mettono di solito all'inizio script e css? Grazie

Alfred, in data 18/03/2004 0.12, ha occupato banda con questi byte:

Perche' il browser interpretra il codice dall'alto verso il basso, cosi' 
se ci sono script che devono partire PRIMA di un determinato evento 
(click su link), vengono caricati PRIMA dell'evento stesso. Stessa cosa 
dicasi per i CSS. Qualora li ponessi alla fine del codice e la pagina 
fosse pesantuccia da caricare, vedresti il testo non formattato e lo 
sfondo bianco, PRIMA che il browser arrivi a caricare gli stili.
-- 
Spirito Libero
Siamo tutti un po' abusivi a questo mondo...
(Non mettere il sale se vuoi rispondermi!)

 gli stili.
Sì, questo l'ho sperimentato.

 
Se non ci sono Timeout o funzioni che devono verificare qualcosa al 
caricamento dovrebbe funzionare. Per ottimizzare il codice, e' meglio 
porre gli script in un file a parte e richiamarlo nel documento HTML. Se 
vuoi che un evento si verifichi al caricamento della pagina aggiungi 
l'evento onload al <body> oppure, molto meglio, direttamente nel file 
..js (window.onload).


 mettono di solito all'inizio script e css? Grazie
Perchč, per quanto riguarda i css, č specificato dai parametri standard del
W3C.
"The style element goes in the head section."
Per gli script č come dice Spirito Libero.
Non capisco poi che fastidio diano averli in cima o in fondo.
Bye Cico

 Non capisco poi che fastidio diano averli in cima o in fondo.
Alcuni motori di ricerca leggono solo un numero limitato di caratteri di
ogni pagina html e cmq attribuiscono punteggi di coerenza semantica alle
keywords posizioante più "in altro". Le prime righe di codic sono un luogo
"Topico" ed è importante non ingolfarle di script.

Spirito Libero wrote:
Ho fatto cosě, dimmi se va bene!
Ho spostato tutti gli script piů grossi in file  .js (ed ho cosě risolto,
grazie a te, il problema che avevo). Per il posizionamento dei tag script
(anxche di quelli che linkano file js), mi sono comportato cosě: tra <head>
ed </head> ho messo quei tag script per cui ho ritenuto giustificato che
venissero caricati in memoria prima di qualsiasi elemento del body che li
potesse richiamare. Nella maggior parte dei casi, cmq, ho spostato il tag
<script... che avevo prima di </head> immediatamente prima di quella parte
di body che codifica per elementi in grado di richiamarlo.
Come mi sono comportato? Puň essere eccessiva la vicinanza (in body) tra
<script.... ed il seguente codice che lo richiama?
Grazie

 Ho spostato tutti gli script piů grossi in file  .js (ed ho cosě
 risolto, grazie a te, il problema che avevo). Per il posizionamento
 dei tag script (anxche di quelli che linkano file js), mi sono
 comportato cosě: tra <head> ed </head> ho messo quei tag script per
 cui ho ritenuto giustificato che venissero caricati in memoria prima
 di qualsiasi elemento del body che li potesse richiamare. Nella
 maggior parte dei casi, cmq, ho spostato il tag <script... (che avevo
 prima di </head>)  immediatamente prima di quella parte di body che
 codifica per gli elementi in grado di richiamarlo.


 Grazie
Prego


 questo caso, lo <script...> va messo fra i due tag.
Ma io l "link" agli script esterni l'ho messo anche nel corpo, ovunque vi
era prima uno script intero.
Es.:
ho messo:
<script src="js/email.js"></script>
allo stesso posto in cui avevo tutto il javscript che è finito, invece,
(senza tag <script> e </script>) nel file email.js
Subito dopo c'è:
<center><form name="eMailer">
<p>
<font color="#000000" size="2" face="Verdana"><strong>Segnala questo
sito!</strong></font><br>
<font color="#000000" size="2">Introduci la E-mail del
destinatario:</font><br>
<input type="text" name="address" size="22"><br>
<input type="submit" value="Segnala" onClick="mailThisUrl()"></p>
che è il form che gestisce l'evento, giusto?
Però il link al javascrip l'ho messo tra i tag body, prima del form di qui
sopra (pensando che in questo modo in memoria lo script per gestire l'evento
ci va prima che il forma viene visualizzato dal browser).
La mia domanda era (ora ne sono 2, ma collegate):
1) posso mettere il link
<script src="....
sia tra <head></head>, sia tra <body></body>??
2) per la posizione degli script (anzi, dei link agli script - dove per link
intendo il tag <script src="....), va bene regolarsi come di seguito?
Scripts (o i link ad essi) nella sezione head: Gli script che devono essere
eseguiti quando sono richiamati, vanno inseriti nella sezione Head, in
questo modo siamo sicuri che saranno caricati prima di essere richiamati.
Oppure, sempre per gli script che devono essere eseguiti quando sono
richiamati,  li metto nel corpo, ma cmq PRIMA della parte di codice HTML che
specifica il form o il link (ecc ecc) che richiama lo script (come
nell'esempio pratico di sopra)
Scripts nella sezione body: Gli script (o i link ad essi) che devono essere
*eseguiti* quando la pagina viene caricata, vanno nella sezione Body.
Come mi sto comportando???

 
Metti tutto tra i tag <head></head>: gli script, una volta caricati, 
resteranno in memoria fino a quando non cambi pagina.


 resteranno in memoria fino a quando non cambi pagina.
Certo, tanto posso farlo senza problemi, visto che il link allo script
esterno mi "occupa" molto meno che non lo script medesimo.
Grazie di cuore a te ed agli altri, per tutto.
Se poi non chiedo molto, gradirei avere il tuo parere su un'altra questione
che ho appena postato su questo NG.
Grazie