我很震惊地从Quirksmode阅读以下内容:
不推荐使用:直接JavaScripts
不要使用直接JavaScripts,原因在第2C节中说明 这本书。本节仅出于历史原因进行维护。
最简单的方法是将脚本直接放在页面中。怎么样 放置
<script language="javascript" type="text/javascript"> <!-- script goes here // --> </script>
根据我对阅读本文的理解,将使用src
标记上的<script>
属性来包含javascripts。我没有the book,也无法在网上找到进一步的参考资料。有谁知道这是正确还是我误解了它想说的是什么?
答案 0 :(得分:4)
没有HTML规范将内联JavaScript标记为已弃用或已过时。
但人们普遍认为它不是最佳做法。
答案 1 :(得分:1)
它没有被弃用,它仍然被广泛使用。
如果你看一下这个问题:https://softwareengineering.stackexchange.com/questions/86589/why-should-i-avoid-inline-scripting很好地解释了为什么这是一个坏主意。
我遇到的最大问题是它会让你的html页面看起来很糟糕。例如,如果你有一些内联的javascript,以及另一个文件中的一些javascript,如果你需要更改它,很难找到合适的代码。
内联css也是如此。它使你的html文件更难阅读和理解。
答案 2 :(得分:1)
脚本标记。
相关部分称为“不推荐使用:直接JavaScripts”,以及 该注释引用该部分的标题。必读: “请勿对标记使用”Direct JavaScripts“建议 句法。本节仅出于历史原因进行维护。“
该部分已弃用
http://www.peachpit.com/articles/article.aspx?p=1338952&seqNum=3
答案 3 :(得分:1)
PPK表示该部分本身已弃用。在那里提出的建议在发布时已被普遍接受和相关,但它不再与当前的标记语言和最佳实践保持一致:
language
属性为deprecated since HTML 4.01。type
attribute is text/javascript
- 因此,它通常可以被丢弃。<!--
和-->
)为a workaround for the IE 2 and Netscape 1 generation of browsers,近20年来一直未被要求。head
中。这在拨号的时候是有道理的,但是现在建议在少数特定情况(例如Modernizr,html5shiv)之外,你应place scripts at the end of your document body
阻止它们阻止渲染和并行下载。Avoid inlining scripts in general以获得更好的可维护性和可缓存性。您仍然允许内联脚本,如果符合以下条件,则可能有意义:
除非另有必要,否则请使用以下内联JS语法。
<强> HTML5:强>
<script>
// ...
</script>
HTML 4.01:
<script type="text/javascript">
// ...
</script>
<强> XHTML5:强>
<script>
//<![CDATA[
// ...
//]]>
</script>
XHTML 1.x:
<script type="text/javascript">
//<![CDATA[
// ...
//]]>
</script>