2012-03-05 9 views
9

Sto provando a creare un file javscript che crea una openheatmap. Devo includere due diversi file javascript src, ma quello che sto facendo attualmente non funziona, questo è quello che sto facendo ora.Javascript script multipli src

<html> 
<head> 

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script> 
<script src="http://static.openheatmap.com/scripts/jquery.openheatmap.js" type="text/javascript"></script> 

Esiste un modo migliore per fare questo?

+2

perché c'è un terzo tag 'script' non chiuso? – cambraca

+5

Questo è il modo corretto per includere più script. Sarebbe meglio pubblicare un [esempio breve, autonomo, corretto] (http://sscce.org/) del tuo problema. Inoltre, jQuery 1.4.2? Un po 'di vecchio non credi? – Phil

+0

il terzo tag script finale si trova nella parte inferiore del mio file, dopo quelle tre righe ho il codice javascript rimanente. E sì, sono d'accordo che è una vecchia versione. – ewein

risposta

7

C'è un modo migliore per includere i file JavaScript: lo si fa in ritardo nel file, specialmente dove lo script non è ospitato da voi. Ciò consente di caricare la pagina senza bloccare le risorse esterne.

Quindi ti consiglio di mettere tutti gli script appena prima del tag di chiusura body.

Si può anche fare un ulteriore passo avanti e caricare gli script senza bloccare il rendering della pagina, cosa che si può fare con l'attributo defer (che a differenza dell'attributo async garantisce l'ordine di esecuzione, che sembra importante nell'esempio).

<script defer src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> 
    <script defer src="http://static.openheatmap.com/scripts/jquery.openheatmap.js"></script> 
    <script defer> 
     // JavaScript here... 
    </script> 
</body> 

È anche possibile utilizzare un attributo onload con l'attributo rinviare per specificare un metodo per eseguire una volta che il DOM è pronto.

<script defer onload="MyStuff.domLoaded();"> 

Per l'altra parte della tua domanda, per quanto riguarda se il vostro script funziona, fornisci qualche informazione in più.

Problemi correlati