Saya membaca bahwa Anda tidak lagi perlu hal-hal seperti type="text/javascript"
dan aneh CDATA
dan <!--
hal-hal di tag naskah Anda. Jadi, alih-alih:
<script type="text/javascript">
//<![CDATA[
<!--
//your script here
-->
//]]>
</script>
Anda hanya perlu:
<script>
//your script here
</script>
Saya tidak ingat di mana saya membaca ini. Itu dari seorang insinyur Google atau Yahoo saya pikir, dan mereka secara spesifik menyebutkan browser mana yang memerlukan konstruksi kuno ini dan mengapa. Adakah yang tahu posting blog / artikel apa yang dibicarakan ini, atau punya sumber yang bagus untuk membicarakan ini?
javascript
html
cmcculloh
sumber
sumber
text/javascript
ditentukan, saya menghapusnya. Itu kebisingan.Jawaban:
Lihat tulisan Crockford pada
<script>
tag , terutama:...
sumber
RubyScript
menjadi populer, itu akan berakhir.rbscript
dan browser akan bertindak sesuai.Ini rekomendasi Crockford . Saya tahu saya pernah melihatnya bergema di tempat lain (ppk mungkin?). Spesifikasi HTML5 tidak memerlukannya.
Anehnya, menjadi agak au courant untuk menggunakan atribut "type" untuk menandai
<script>
blok yang tidak ingin Anda evaluasi:Dengan memberikan tipe non-JavaScript yang aneh, Anda mendapatkan cara untuk memasukkan teks mentah ke halaman untuk digunakan oleh kode JavaScript lainnya (yang mungkin dalam blok skrip yang dapat dievaluasi).
sumber
type="text/html"
artinya sama sekali, dan apatext/javascript
artinya .. terima kasih<script>
blok. Namun, itu<script>
akan menjadi bagian dari DOM, sehingga kode JavaScript lainnya dapat menemukannya dan mengekstrak isinya.In HTML5, the type attribute is no longer required for JavaScript. The default value is "application/javascript".
HTML5 tidak memerlukan
type="text/javascript"
(itu default).CDATA
hanya diperlukan untuk halaman XHTML, jika skrip memiliki karakter HTML (seperti '<' dan '>') di dalamnya.<!--
seharusnya hanya diperlukan untuk browser LAMA.sumber
Yah, saya tergoda untuk mengatakan bahwa tidak ada yang menggunakan
text/javascript
lagi, dan bahkan alat minifikasi mungkin akan menghapusnya ... Memang, dokumentasi Facebook SDK hanya menentukan<script>
.Namun, dokumentasi Google SDK masih memiliki
text/javascript
.Dokumentasi Amazon SDK masih memiliki
text/javascript
.Dokumentasi Linkedin API masih memiliki
text/javascript
.Instagram masih menggunakan
text/javascript
.sumber
The jenis atribut mengidentifikasi bahasa scripting kode tertanam dalam unsur naskah atau direferensikan melalui atribut src elemen. Ini ditentukan sebagai tipe MIME; contoh tipe MIME yang didukung termasuk teks / javascript, teks / ecmascript, aplikasi / javascript, dan aplikasi / ecmascript.
Menurut Spesifikasi HTML 4.01
Tetapi dalam HTML5
text/javascript
adalah tipe default, sehingga Anda dapat menghilangkansumber
Anda mungkin memikirkan artikel ini di sini dengan ketergantungan bahwa skrip default untuk teks / javascript dalam HTML5 secara otomatis, sementara peramban non-HTML5 masih berharap Anda menentukan jenisnya secara spesifik meskipun mereka hampir selalu menebak teks / javascript. .
sumber
terserah browser untuk menafsirkan
script
blok dengan benar berdasarkan header, saya percaya, dan bukantype
atributnya. Jadi untuk menjawab pertanyaan Anda, tidak, itu tidak diperlukan untuk browser modern (saya berbicara IE7 +, FF, Webkit). Jika Anda mendukung browser yang lebih lama dari itu ... Saya merasa kasihan pada Anda =)sumber
Jika Anda memasukkan tag skrip ke dalam SVG, Anda harus menentukan atribut type. Dan itu seharusnya
"text/ecmascript"
bukan"text/javascript"
.Jika skrip Anda inline (tidak ditautkan), Anda harus membungkus skrip juga dalam deklarasi CDATA. Dengan demikian boilerplate skrip inline untuk SVG (dan varian XML lainnya)
Ini mungkin merupakan kasus khusus 'di alam liar', tetapi mereka cukup nyata, dan penggunaan SVG sedang tumbuh, jadi tidak benar bagi orang lain untuk menyarankan bahwa atribut tipe dan CDATA sepenuhnya usang di browser modern. Kasus penggunaannya sempit, ya, tapi tidak pernah terdengar.
sumber
Standar MIME Sniffing memungkinkan JavaScript dilayani menggunakan semua jenis MIME ( Ekstensi Surat Internet Multiguna ) yang cocok dengan yang berikut ini:
sumber
Yah saya terus melihat lebih banyak contoh tanpa teks / javascript tetapi untuk beberapa alasan skrip saya tidak akan berfungsi dalam FF ketika saya melakukannya. Saya akan merekomendasikan menjaga deklarasi teks / javascript. Tag CDATA mencegah javascript ditampilkan sebagai teks biasa di situs web Anda jika browser javascript dimatikan. Secara pribadi saya tidak menggunakan tag itu lagi tidak berpikir ada banyak pengguna di luar sana tanpa dan jika mereka di luar sana mereka mungkin ingin menumbuhkan otak: P
sumber
<script>
, tidak ada "bahasa" dan tidak ada "tipe", dan mereka bekerja dengan baik di semua browser. (Ya, semua yang masuk akal: FF, Chrome, Safari, IE, Opera.)type="text/javascript"
: Diperlukan dalam HTML 4 dan XHTML, tetapi opsional dalam HTML5.CDATA
: Diperlukan dalam XHTML.<!--
: Digunakan untuk menyembunyikan JavaScript dari browser yang sangat lama. Misalnya: Netscape 1 dan Internet Explorer 2, yang keduanya tidak lagi digunakan.sumber