我已经看到这个标签在javascript函数之后使用了十多年了,从未问过为什么。在我这次看过的大部分教程中都可以看到它,但我通常会把它排除在外......它似乎没有这种或那样的效果。任何人都可以告诉我为什么使用这个?
如果只是为了表示javascript函数的结束,右支撑是不是足够了?如果是一系列函数,则使用结束脚本标记。
我怀疑我需要一个例子,但对于那些也想知道它是什么的所有其他读者,这里有一些代码:
function helloWorld() {
document.write('Hello World');
}
//-->
提前致谢!
答案 0 :(得分:10)
从没有JS支持的浏览器相当普遍的日子开始,这是一个延续。如果您直接在JS文件中包含JS代码,则会在代码周围添加HTML注释标记(<!-- -->
),以便这些浏览器不会将其显示为页面的一部分。 // -->
的原因是做支持JS的浏览器没有尝试将结束HTML注释解释为JS代码的一部分。
答案 1 :(得分:4)
回到过去,有些浏览器没有处理javascript,所以为了避免错误,你可以将javascript代码放在HTML注释块“”中。
今天,XHTML标准说你应该像
那样逃避你的脚本<script type="text/javascript">
<![CDATA[
... unescaped script content ...
]]>
</script>
您不必为HTML执行此操作。请参阅:
http://www.w3.org/TR/xhtml1/
http://www.w3schools.com/tags/tag_script.asp
答案 2 :(得分:3)
注释掉代码,因此不支持JS的旧版浏览器不会看到它 现在这可能几乎没用了。
请注意,它在开头还需要<!--
才能将其作为评论。
答案 3 :(得分:1)
如果您注意到,您通常也可以在脚本之前看到<!--
。
使用该语法,因此不支持Javascript的浏览器将忽略这些脚本的主体。
事实上,在html中,被<!--
和-->
包围的任何内容都被视为评论
答案 4 :(得分:1)
如果您正在验证您的html代码,它也很有用,因此js不会显示为无效的html标记。然而,正如大家所提到的那样,它已经过时了。我个人尝试永远不要有内联的javascript,总是在一个可以缓存的外部文件中,这使得这种编码风格毫无用处
答案 5 :(得分:1)
<!--
和结束html_comment_tags -->
将有助于注释掉脚本> / ? < & ^ % # ) ! - (
中的bad_data -->
之前的//
并且浏览器不理解{的含义,它不会解析最后一个comment_ending标记-->
{1}} javascript的评论标记(仅因为jscript被关闭)然后它显然以通常的方式解析//
并注释-->
内的所有内容,包括<script></script>