script
适用DTD:Strict Transitional Frameset 适用浏览器:All
释义
插入脚本(script)
语法
<script 属性="属性值">~标签内容~</script>
<script 属性="属性值">~标签内容~</script>
说明
在XHTML文件中,script元素被声明为#PCDATA内容形式,<和&被视为标签的开始,而<和&又会被认为是<和&,所以必须将script元素的内容包括在CDATA标记中,也就是使用XML的CDATA section形式。而在需要以text/html发送的文件中,为了能在不能处理CDATA部分的浏览器中隐藏,CDATA部分的起始和结束标签也需要注释掉
可以直接在页面中嵌入脚本代码,也可以
终止标签不可省略
属性
nbsp;
根据W3C的HTML 4.01规格书,应当在文档中定义默认脚本语言,可以使用meta元素,包含在head中:
不幸的是,似乎浏览器不支持这种做法。
为了避免不支持脚本的浏览器把脚本代码内容当作普通文本显示在页面中,需要将脚本语句包含在HTML中,这样,不支持脚本的浏览器会把脚本语句当作HTML注释,而智能的脚本引擎能理解并执行脚本。或者把脚本放在外部文件中,然后用src指向它。具体如下:
对于JavaScript
JavaScript脚本引擎允许字符串<!--出现在脚本元素的开头,并且会忽略当前行内余下的字符。JavaScript将//解释为当前行的注释的开始,即从//开始到行尾的字符都被忽略,因此使用它将字符串<!--从JavaScript解析器前隐藏。
在VBScript中,单引号字符串'用作当前行内注释的开头,所以使用它可以将字符串-->从VBScript中隐藏,例如:
在Tcl中,字符串#用作当前行内注释的开头:
<meta http-equiv="Content-Script-Type" content="type">
其中type为MIME类型:"text/tcl", "text/javascript", "text/vbscript"等。不幸的是,似乎浏览器不支持这种做法。
为了避免不支持脚本的浏览器把脚本代码内容当作普通文本显示在页面中,需要将脚本语句包含在HTML中,这样,不支持脚本的浏览器会把脚本语句当作HTML注释,而智能的脚本引擎能理解并执行脚本。或者把脚本放在外部文件中,然后用src指向它。具体如下:
对于JavaScript
JavaScript脚本引擎允许字符串<!--出现在脚本元素的开头,并且会忽略当前行内余下的字符。JavaScript将//解释为当前行的注释的开始,即从//开始到行尾的字符都被忽略,因此使用它将字符串<!--从JavaScript解析器前隐藏。
<script type="text/javascript">
<!-- 将脚本内容从旧版本的浏览器前隐藏
function square(i) {
document.write("The call passed ", i ," to the function.","<BR>")
return i * i
}
document.write("The function returned ",square(5),".")
// 结束隐藏 -->
</script>
对于VBScript<!-- 将脚本内容从旧版本的浏览器前隐藏
function square(i) {
document.write("The call passed ", i ," to the function.","<BR>")
return i * i
}
document.write("The function returned ",square(5),".")
// 结束隐藏 -->
</script>
在VBScript中,单引号字符串'用作当前行内注释的开头,所以使用它可以将字符串-->从VBScript中隐藏,例如:
<script type="text/vbscript">
<!--
Sub foo()
...
End Sub
' -->
</script>
对于TCL<!--
Sub foo()
...
End Sub
' -->
</script>
在Tcl中,字符串#用作当前行内注释的开头:
<script type="text/tcl">
<!-- 将脚本内容从旧版本的浏览器前隐藏
proc square {i} {
document write "The call passed $i to the function.<BR>"
return [expr $i * $i]
}
document write "The function returned [square 5]."
# 结束隐藏 -->
</script>
<!-- 将脚本内容从旧版本的浏览器前隐藏
proc square {i} {
document write "The call passed $i to the function.<BR>"
return [expr $i * $i]
}
document write "The function returned [square 5]."
# 结束隐藏 -->
</script>
示范
<script type="text/javascript">
<!--
[用于HTML文档的脚本语句]
//-->
</script>
<!--
[用于HTML文档的脚本语句]
//-->
</script>
范例
下面的例子显示了XHTML文件基础结构: 运行打印
下面的例子显示了XHTML文件基础结构: 运行打印
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>元素script</title>
</head>
<body>
<h3>script元素,在网页中嵌入脚本</h3>
<script type="text/javascript">
<!--
var txt=prompt("请随便输入几个字","");
document.write("这是用JavaScript写出来的文字:<font color='red'>"+txt+"<\/font>");
//-->
</script>
<hr>
<script type="text/vbscript" language="vbscript">
<!--
txt2=inputbox("请再次随便输入几个字","VBSCRIPT","")
document.write "这是用VBScript写出来的文字:<font color=""red"">"&txt2&"</font>"
'-->
</script>
</body>
</html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>元素script</title>
</head>
<body>
<h3>script元素,在网页中嵌入脚本</h3>
<script type="text/javascript">
<!--
var txt=prompt("请随便输入几个字","");
document.write("这是用JavaScript写出来的文字:<font color='red'>"+txt+"<\/font>");
//-->
</script>
<hr>
<script type="text/vbscript" language="vbscript">
<!--
txt2=inputbox("请再次随便输入几个字","VBSCRIPT","")
document.write "这是用VBScript写出来的文字:<font color=""red"">"&txt2&"</font>"
'-->
</script>
</body>
</html>