Reputation: 1333
I was just wondering, what is the difference between
<script>
and
<script type = 'text/javascript'>
Is it different for different webservers?
For example,(I know it's incorrect to provide a link from w3schools, but look)
http://www.w3schools.com/js/tryit.asp?filename=tryjs_myfirst
Using chrome, I visited w3schools and I realised that the <script>
tag is all I need.
However, when I did an offline javascript test, i realised that i need the
<script type = 'text/javascript'>
tag. Why is this so?
Upvotes: 103
Views: 142454
Reputation: 93
You only need <script></script>
Tag that's it. <script type="text/javascript"></script>
is not a valid HTML tag, so for best SEO practice use <script></script>
Upvotes: -4
Reputation: 13801
In HTML 4, the type attribute is required. In my experience, all browsers will default to text/javascript if it is absent, but that behaviour is not defined anywhere. While you can in theory leave it out and assume it will be interpreted as JavaScript, it's invalid HTML, so why not add it.
In HTML 5, the type attribute is optional and defaults to text/javascript
Use <script type="text/javascript">
or simply <script>
(if omitted, the type is the same). Do not use <script language="JavaScript">
; the language attribute is deprecated
Ref :
http://social.msdn.microsoft.com/Forums/vstudio/en-US/65aaf5f3-09db-4f7e-a32d-d53e9720ad4c/script-languagejavascript-or-script-typetextjavascript-?forum=netfxjscript
and
Difference between <script> tag with type and <script> without type?
Do you need type attribute at all?
I am using HTML5- No
I am not using HTML5 - Yes
Upvotes: 92
Reputation: 22711
<!-- HTML4 and (x)HTML -->
<script type="text/javascript"></script>
<!-- HTML5 -->
<script></script>
type attribute identifies the scripting language of code embedded within a script element or referenced via the element’s src attribute. This is specified as a MIME type; examples of supported MIME types include text/javascript, text/ecmascript, application/javascript, and application/ecmascript. If this attribute is absent, the script is treated as JavaScript.
Ref: https://developer.mozilla.org/en/docs/Web/HTML/Element/script
Upvotes: 6
Reputation: 28528
type="text/javascript"
This attribute is optional. Since Netscape 2, the default programming language in all browsers has been JavaScript. In XHTML, this attribute is required and unnecessary. In HTML, it is better to leave it out. The browser knows what to do.
In HTML 4.01 and XHTML 1(.1), the type
attribute for <script>
elements is required.
Upvotes: 13
Reputation: 943193
<script>
is HTML 5.
<script type='text/javascript'>
is HTML 4.x (and XHTML 1.x).
<script language="javascript">
is HTML 3.2.
Is it different for different webservers?
No.
when I did an offline javascript test, i realised that i need the
<script type = 'text/javascript'>
tag.
That isn't the case. Something else must have been wrong with your test case.
Upvotes: 30