我正在尝试从一本书中学习JavaScript。本书的第一章说使用以下格式来支持不支持JS的旧浏览器。它实际上做的很简单,它使用HTML注释标记来隐藏不支持JS的浏览器的脚本。我怀疑这个代码在所有浏览器中都适合我,但在Aptana Studio 3中显示错误。现在我明白错误是由于Aptana考虑“<”作为关系运算符,但如何解决此错误?
<script>
<!--
//some JS code over here...
//-->
</script>
出现错误(语法错误:意外令牌):
<!--
答案 0 :(得分:1)
我知道这不能直接回答你的问题,但事实是这根本不需要做。如果浏览器不知道如何解释JavaScript,几乎所有浏览器都会忽略代码。此外,由Matt Kruse给出的以下原因添加<!-- // -->
也可能是危险的:
有关更详细的说明,建议您查看this documentation有关JavaScript的最佳做法和this question,了解为什么在JavaScript中使用HTML注释是不好的做法。
如果出于某种原因,如果用户禁用了JavaScript(或因旧版浏览器而无法运行),您仍希望向用户显示内容,请使用<noscript>
代码
如果你真的对评论你的JavaScript感到厌烦,那么请使用这段代码,而不应该给你错误:
//<!--
//-->
如果您有任何其他问题,请随时提出。
答案 1 :(得分:-1)
现在每个浏览器都支持JS。这个技巧用于防止第一代浏览器将JS代码显示为纯文本。
您可能需要查看Enterprise Site List文章。
不要将
<!-- //-->
hack与脚本一起使用。它旨在防止脚本在第一代浏览器Netscape 1和Mosaic上显示为文本。多年来一直没有必要。<!-- //-->
应该表示HTML评论。注释应该被忽略,而不是编译和执行。此外,HTML注释不包括--
,因此递减的脚本会出现HTML错误。
编辑1: 如果您仍想在Aptana Studio 3中使用此技巧,请尝试评论第一部分:
<script>
//<--
Code Goes Here...
//--!>
</script>
我没有测试但是解决了aptana中的错误