Quale è meglio: … o …

Quale è migliore o più conveniente da usare:

... 

o

 ... 

Hai bisogno di un attributo di tipo? Se utilizzi HTML5, no. Altrimenti, sì. HTML 4.01 e XHTML 1.0 specifica l’attributo type come richiesto mentre HTML5 lo ha come facoltativo, in modo predefinito su text/javascript . HTML5 è ora ampiamente implementato, quindi se si utilizza il doctype HTML5, è valido e una buona scelta.

Per quanto riguarda l’attributo type, l’ application/javascript tipo MIME registrata nel 2006 è destinata a sostituire text/javascript ed è supportata dalle versioni correnti di tutti i principali browser (incluso Internet Explorer 9). Una citazione dalla RFC in questione :

Questo documento definisce quindi testo / javascript e testo / ecmascript ma li contrassegna come “obsoleti”. L’uso di tipi di media sperimentali e non registrati, come elencato nella parte precedente, è sconsigliato. I tipi di media,

  * application/javascript * application/ecmascript 

che sono anche definiti in questo documento, sono intesi per uso comune e dovrebbero essere usati invece.

Tuttavia, IE fino alla versione 8 inclusa non esegue script all’interno di un elemento con un attributo type di entrambe le application/javascript o application/ecmascript , quindi se hai bisogno di supportare il vecchio IE, sei bloccato con il text/javascript .

Entrambe funzioneranno ma lo standard xhtml richiede di specificare anche il type :

    

type = content-type [CI] Questo attributo specifica il linguaggio di scripting del contenuto dell’elemento e sovrascrive il linguaggio di scripting predefinito. Il linguaggio di scripting è specificato come un tipo di contenuto (ad es. “Text / javascript”). Gli autori devono fornire un valore per questo attributo. Non esiste un valore predefinito per questo attributo.

Si noti l’enfasi sopra.

http://www.w3.org/TR/html4/interact/scripts.html

Nota: A partire da HTML5 (molto lontano), l’attributo type non è richiesto ed è predefinito.

Devi usare meno che tu non stia usando html5. In tal caso sei incoraggiato a preferire (perché l’attributo type è specificato in base a quel valore)

Questo è tutto ciò che è necessario:

   

perché è la strada giusta e compatibile con tutti i browser

Con l’ultimo Firefox, devo usare:

  

Oppure lo script potrebbe non funzionare correttamente.