- It identifies a block of script in the page.
- It loads an external JavaScript file.
Which it does depends on the presence of the
src attribute. A
</script> close tag is required in
either case.
A script tag can contain below attributes:
src="url"
The src
attribute is optional. If it is present, then its value is a
url which identifies a
.js
(JavaScript)
file. The loading and processing of the web page pauses while the browser fetches,
compiles, and executes the file. The content between the
<script
src="url">
and the
</script> should be blank.
If the
src attribute is not present, then the content text between the
html
<script> and the
</script> is compiled and executed.
The script should not contain the sequence
</
because it could be confused with the
</script>. Inserting a backslash
between <
and /
in strings avoids the problem.
<\/
The backslash will be ignored by the JavaScript compiler.
Do not use the
<!-- //--> hack with scripts. It
was intended to prevent scripts from showing up as text on the first generation
browsers Netscape 1 and Mosaic. It has not been necessary for many years.
<!-- //-->
is supposed to signal an HTML comment. HTML Comments should be ignored in
JavaScript, not compiled
and executed. Also, HTML comments are not to include
--,
so a script that decrements has an HTML error.
language="JavaScript"
This attribute has been deprecated. It was used to select other programming languages and specific versions of JavaScript. You don't need it. Don't use it.
type="text/JavaScript"
HTML Script attribute type 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.
defer
HTML Script attribute defer was intended to alter the timing of component loading in pages. It is not well supported and should not be used.
