2016-03-28 14 views
5

Disclaimer: Ho programmato per tutti i quindici minuti. Sto cercando di seguire la classe Programming Foundations di Lynda.com, ma non riesco a collegare il mio JS al mio HTML. Sono nella stessa cartella. Quando apro il file HTML sul mio browser, non ottengo la finestra pop-up JS che il tizio nel video fa. Che cosa sto facendo di sbagliato?Javascript non collegherà a HTML

Ecco il mio file HTML:

<html> 
    <head> 
     <title>Simple Page</title> 
    </head> 
    <body> 
     <p>This is a very simple HTML page</p> 
       <script src=“script.js”></script> 
    </body> 
</html> 

Ed ecco il file JS dal titolo "script.js" nella stessa cartella del file HTML.

var name = prompt("What is your name?"); 
alert("Hello, " + name); 
+11

In primo luogo, provare a correggere i vostri preventivi. Dovrebbe essere "" script.js "'. Successivamente, ti suggerisco di aprire la tua console (premi F12). Questo sarà davvero utile man mano che andrai avanti perché ti mostrerà i messaggi di errore quando le cose vanno male. Quei messaggi sono ciò che tutti usano per determinare perché qualcosa non funziona. –

+0

Probabilmente avrai bisogno della funzione document.ready per coprire tutte le tue funzioni –

+3

@LuanSoares No, completamente false. A) Non stanno usando jQuery. B) Non stanno accedendo al DOM. C) Anche se stavano accedendo al DOM, il loro script si sta caricando dopo che tutti i DOM sono stati caricati. –

risposta

-1

collegamenti a file JavaScript esterni dovrebbero essere nella sezione head della pagina, in questo modo:

<html> 
    <head> 
     <title>Simple Page</title> 
     <script src="script.js"></script> 
    </head> 
    <body> 
     <p>This is a very simple HTML page</p>   
    </body> 
</html> 

E, il percorso del file deve essere relativo alla posizione del file HTML. Quindi, se hai l'HTML e il file .js nella stessa cartella, il nome del file è corretto.

Assicurati che entrambi i file siano salvati e che il nome del file .js sia esattamente quello che hai nel file HTML. Inoltre, usa le virgolette ("") che otterrai con un editor di testo e le virgolette non formattate ("") che ottieni con applicazioni come Word.

+5

No, in effetti è preferibile caricarli sul fondo del corpo quando possibile. –

+2

@Scott Marcus: non era così tanto tempo fa ... prima di html5 ...? – yezzz

+0

@MikeC In realtà, non aiuta a evitare gli errori di accesso DOM (che è facilmente superabile usando i gestori di eventi), ma metterli in fondo non è certo una best practice.In ogni caso, l'OP non lo sta facendo, ha la sceneggiatura nel centro del corpo, il che non è mai consigliato. –

1

risolvere il tuo citazioni usano "non“. Il browser è in grado di analizzare il codice HTML. Utilizzare la console sviluppatore per controllare gli errori in futuro.

4

Ha funzionato per me quando ho cambiato le virgolette per rette . Copia e incolla questo:

<script src="script.js"></script> 

Invece di questo:

<script src=“script.js”></script> 

farmi sapere se funziona

.
+0

Ha funzionato! Grazie mille! Sto usando Sublime come editor di testo. Sorpreso che non hanno tenuto conto di virgolette intelligenti. Sul mio Mac sono andato Preferenze di Sistema> Tastiera> Testo, quindi deselezionato "Usa virgolette e tratteggi intelligenti". –

0

Prova questo plunker. Ha il tuo codice esattamente (anche lo stesso nome script.js) tranne che ho cambiato i caratteri di preventivo e funziona perfettamente. Usa Plunker per testare tutti i tuoi js.

https://plnkr.co/edit/4Mw0RmWfblGp9U8gsuvx

<html> 
    <head> 
     <title>Simple Page</title> 
    </head> 
    <body> 
     <p>This is a very simple HTML page</p> 
       <script src="script.js"></script> 
    </body> 
</html> 
+1

Ci sono già due risposte e un commento che ha menzionato questo –