【问题标题】:Having Script within a Script Src tag? <script> (JavaScript etc)在 Script Src 标签中有 Script? <script> (JavaScript 等)
【发布时间】:2012-08-24 07:12:28
【问题描述】:

为什么这不起作用?

<script type="text/javascript" src="//cdn.com/assets/js/jquery.js">
alert("Hello World!");
</script>

但是这样呢?

<script type="text/javascript" src="//cdn.com/assets/js/jquery.js"></script>
<script type="text/javascript">
alert("Hello World!");
</script>

这在许多从源代码中提取的 HTML 标记中很常见。 Micro optimization 在我的情况下很重要,我也很好奇。

【问题讨论】:

  • 如果一个解决方案有效而另一个无效,这与优化无关,更不用说微优化了。只是关于编程。
  • 但是“微优化”听起来比“编程”更酷。
  • 我注意到你没有code golf 的帐户,我假设你没有见过this post,值得寻找 JavaScript 优化
  • 您到底想优化什么?带宽?代码行?客户处理时间?获取请求?考虑一下,如果您从 Google CDN 提供 jQuery,客户端可能已经缓存了它。

标签: javascript html validation optimization


【解决方案1】:

来自http://javascript.crockford.com/script.html

"如果 src 属性不存在,则编译并执行&lt;script&gt;&lt;/script&gt; 之间的内容文本。"

由于有src属性,内容不被执行

【讨论】:

  • 这也出现在规范中,例如developers.whatwg.org/scripting-1.html#the-script-element - “如果有 src 属性,则该元素必须为空或仅包含也符合脚本内容限制的脚本文档。”
  • 我想知道,` 有效吗?我的猜测是否定的,但为什么呢?编辑:啊,找到了,只在兼容浏览器的 XHTML 中。不过还是不明白为什么..
【解决方案2】:

在第一个示例中,您定义了src,这使得它忽略了&lt;script&gt;&lt;/script&gt; 的内容

在第二个示例中,您有 2 个单独的 &lt;script&gt;&lt;/script&gt; 标签,其中第二个是您要执行的代码。

【讨论】:

    【解决方案3】:

    来自w3.org(强调我的):

    如果 src 有一个 URI 值,用户代理 必须忽略元素的 内容并通过 URI 检索脚本。

    【讨论】:

      猜你喜欢
      • 2015-06-07
      • 2014-01-13
      • 2023-02-11
      • 2014-04-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多