2013-12-25 3 views
82

Мне было просто интересно, в чем разница между<script> тег против < 'текст/JavaScript' скрипт Type => Тег

<script> 

и

<script type = 'text/javascript'> 

он отличается для различных веб-серверов?

Например, (я знаю, что это неправильно, чтобы обеспечить связь с W3Schools, но посмотрите)

http://www.w3schools.com/js/tryit.asp?filename=tryjs_myfirst

Используя хром, я посетил w3schools, и я понял, что <script> тег все, что мне нужно.

Однако, когда я сделал автономный Javascript тест, я понял, что мне нужно

<script type = 'text/javascript'> 

тег. Почему это так?

+0

@ Pumbaa80 Мой вопрос отличается. Я спросил, зависит ли это от разных веб-серверов. – leonneo

+2

Это дубликат, и это не зависит от веб-сервера. Если вы считаете, что вам нужен атрибут в автономном тесте, тогда вы должны указать «конкретно» * и указать код, который показывает, что вы имеете в виду (и объясните, почему вы считаете, что вам «нужно»). –

+1

@ JukkaK.Korpela nope. Я также указал свою собственную проблему. – leonneo

ответ

76

В HTML 4 требуется атрибут типа. По моему опыту, все браузеры по умолчанию будут использовать текст/javascript, если он отсутствует, но поведение не определено нигде. Хотя теоретически вы можете оставить его и предположите, что он будет интерпретироваться как JavaScript, он недопустим HTML, так почему бы не добавить его.

В HTML 5, атрибут типа является необязательным и по умолчанию текст/JavaScript

Используйте <script type="text/javascript"> или просто <script> (если опущен, тип то же самое). Не использовать <script language="JavaScript">; атрибут языка является устаревшим

Ref:
http://social.msdn.microsoft.com/Forums/vstudio/en-US/65aaf5f3-09db-4f7e-a32d-d53e9720ad4c/script-languagejavascript-or-script-typetextjavascript-?forum=netfxjscript
и
Difference between <script> tag with type and <script> without type?

вам нужен атрибут типа вообще делать?

Я использую HTML5- Нет

Я не использую HTML5 - Да

+0

Но почему w3schools try-it-editor не требует всей строки? – leonneo

+0

Вы цитируете этот текст из чего-то? – thefourtheye

+0

Да @thefourtheye на самом деле его из одного блога я читал –

27

<script> не является HTML 5.

<script type='text/javascript'> является HTML 4.x (и XHTML 1.x).

<script language="javascript"> - HTML 3.2.

Разные для разных веб-серверов?

No.

, когда я сделал автономный Javascript тест, я понял, что мне нужно <script type = 'text/javascript'> тег.

Это не так. Что-то еще должно было быть не так с вашим тестовым случаем.

12

Douglas Crockford says:

type="text/javascript"

Этот атрибут является необязательным. С Netscape 2, по умолчанию программирование язык во всех браузерах был JavaScript. В XHTML этот атрибут необходим и не нужен. В HTML, лучше оставить его. Браузер знает, что делать.

В HTML 4.01 и XHTML 1 (0,1), атрибут type для <script> элементов required.

+0

Откуда у вас это получилось? – leonneo

+0

@leonneo - В ответ есть ссылка. – Quentin

+0

@leonneo взято из http://javascript.crockford.com/script.html в качестве добавленной ссылки наверху. –

4
<!-- HTML4 and (x)HTML --> 
<script type="text/javascript"></script> 


<!-- HTML5 --> 
<script></script> 

типа атрибут определяет язык сценариев кода, внедренного в элемент сценария или ссылаться с помощью атрибута SRC элемента. Это указано как тип MIME; примеры поддерживаемых типов MIME включают текст/javascript, text/ecmascript, application/javascript и application/ecmascript. Если этот атрибут отсутствует, сценарий рассматривается как JavaScript.

Ref: https://developer.mozilla.org/en/docs/Web/HTML/Element/script

Смежные вопросы