Li em algum lugar que você não precisa mais de coisas como type="text/javascript"
as coisas estranhas CDATA
e <!--
em suas tags de script. Então, em vez de:
<script type="text/javascript">
//<![CDATA[
<!--
//your script here
-->
//]]>
</script>
Você faria apenas:
<script>
//your script here
</script>
Não me lembro de onde li isso. Acho que era de um engenheiro do Google ou Yahoo, e eles mencionaram especificamente quais navegadores exigiam essas construções arcaicas e por quê. Alguém sabe sobre qual post / artigo do blog foi comentado ou tem um bom recurso falando sobre isso?
javascript
html
cmcculloh
fonte
fonte
text/javascript
especificado, removo-o. É barulho.Respostas:
Veja o artigo de Crockford na
<script>
etiqueta , mais notavelmente:...
fonte
RubyScript
tornar popular, terminará.rbscript
e o navegador agirá de acordo.É uma recomendação de Crockford . Eu sei que já vi isso ecoar em outro lugar (talvez ppk?). A especificação HTML5 não exige isso.
Estranhamente, tornou-se algo fácil de usar o atributo "type" para marcar
<script>
blocos que você não deseja avaliar:Ao fornecer um tipo estranho não JavaScript, você pode inserir texto bruto na página para uso por outro código JavaScript (que provavelmente está no bloco de script que pode ser avaliado).
fonte
type="text/html"
significa em tudo, e o quetext/javascript
significa .. obrigado<script>
bloco. No entanto,<script>
ele se tornará parte do DOM, para que outro código JavaScript possa encontrá-los e extrair seu conteúdo.In HTML5, the type attribute is no longer required for JavaScript. The default value is "application/javascript".
O HTML5 não precisa do
type="text/javascript"
(é o padrão).CDATA
só é necessário para páginas XHTML, se o script tiver caracteres HTML (como '<' e '>').<!--
só deve ser necessário para navegadores OLD.fonte
Bem, estou tentado a dizer que ninguém mais está usando
text/javascript
, e que mesmo as ferramentas de minificação provavelmente o removeriam ... De fato, a documentação do Facebook SDK especifica apenas<script>
.No entanto, a documentação do Google SDK ainda tem
text/javascript
.A documentação do Amazon SDK ainda possui
text/javascript
.A documentação da API do Linkedin ainda possui
text/javascript
.O Instagram ainda está usando
text/javascript
.fonte
O atributo type identifica a linguagem de script do código incorporado em um elemento de script ou referenciado por meio do atributo src do elemento. Isso é especificado como um tipo MIME; exemplos de tipos MIME suportados incluem text / javascript, text / ecmascript, application / javascript e application / ecmascript.
De acordo com a especificação HTML 4.01
Mas no HTML5
text/javascript
é o tipo padrão, então você pode omitirfonte
você pode estar pensando neste artigo aqui, com a dependência de que os scripts padronizem automaticamente o texto / javascript no HTML5, enquanto os navegadores que não são HTML5 ainda esperam que você defina o tipo especificamente por especificação, mesmo que quase sempre adivinhem o texto / javascript de qualquer maneira. .
fonte
cabe ao navegador interpretar o
script
bloco corretamente com base nos cabeçalhos, acredito, e não notype
atributo. Então, para responder sua pergunta, não, não é necessário para navegadores modernos (estou falando do IE7 +, FF, Webkit). Se você suporta navegadores mais antigos do que isso ... sinto muito por você =)fonte
Se você está colocando uma tag de script dentro SVG você deve especificar o atributo type. E deveria ser
"text/ecmascript"
melhor que"text/javascript"
.Se o seu script estiver embutido (não vinculado), você precisará envolver o corpo do script em uma declaração CDATA também. O modelo de script em linha para SVG (e outras variantes XML) é, portanto,
Esses podem ser casos especiais 'in natura', mas são reais o suficiente e o uso do SVG está aumentando; portanto, é incorreto para qualquer outra pessoa sugerir que o atributo type e o CDATA sejam totalmente obsoletos nos navegadores modernos. Os casos de uso são limitados, sim, mas não são inéditos.
fonte
O MIME Sniffing Standard permite que o JavaScript seja veiculado usando qualquer tipo de MIME ( Multipurpose Internet Mail Extensions ) que corresponda ao seguinte:
fonte
Bem, continuo vendo mais exemplos sem o texto / javascript, mas por algum motivo meus scripts não funcionam no FF quando faço isso. Eu recomendaria manter a declaração de texto / javascript. A tag CDATA impede que o javascript seja mostrado como texto sem formatação no seu site se o navegador tiver o javascript desativado. Pessoalmente, eu não uso mais essas tags, acho que não há muitos usuários por aí e se eles estão por aí, eles podem querer crescer alguns cérebros: P
fonte
<script>
, sem "linguagem" e sem "tipo", e elas funcionam bem em todos os navegadores. (Bem, todos os razoáveis: FF, Chrome, Safari, IE, Opera.)type="text/javascript"
: Obrigatório em HTML 4 e XHTML, mas opcional em HTML5.CDATA
: Obrigatório em XHTML.<!--
: Usado para ocultar o JavaScript de navegadores muito antigos. Por exemplo: Netscape 1 e Internet Explorer 2, dos quais ninguém mais usa.fonte