【问题标题】:Why would I put an ID on a script tag?为什么我要在脚本标签上放一个 ID?
【发布时间】:2020-12-10 09:01:49
【问题描述】:

我注意到一些 Web 开发人员将 ID 放在脚本标签上。例如:

<script id="scripty" src="something.js" type="text/javascript"></script>

我知道根据 W3C,这是完全合法的标记,但这样做有什么好处?

【问题讨论】:

    标签: javascript html


    【解决方案1】:

    我看到的一种用途是,如果您想为客户提供小部件,并指示他们将&lt;script&gt; 标签放置在他们希望小部件显示的任何位置。如果您给&lt;script&gt; 元素一个ID,那么您可以在其中引用它以将代码放置在正确的位置。当然,这并不是说它是实现这一目标的唯一方法,但我已经看到它完成了并且suggested it in the past

    【讨论】:

      【解决方案2】:

      我已经看到它用于微模板,您可以将模板放在脚本标签中,然后通过 ID 引用它。

      Here's great post with javascript microtemplating by John Resig - 请注意,这不是实现此目的的唯一方法,只有 Johns 版本。

      【讨论】:

        【解决方案3】:

        好处是您可以使用全局变量window.foo 或仅使用foo 来引用带有id="foo" 的元素:

        【讨论】:

          【解决方案4】:

          通过使用 ID,您可以等待特定的 JS 文件完成加载。 FB 这样做

          (function(d, s, id){
              var js, fjs = d.getElementsByTagName(s)[0];
              if (d.getElementById(id)){ return; }
              js = d.createElement(s); js.id = id;
              js.onload = function(){
                  // remote script has loaded
              };
              js.src = "//connect.facebook.net/en_US/sdk.js";
              fjs.parentNode.insertBefore(js, fjs);
          }(document, 'script', 'facebook-jssdk'));
          

          facebook-jssdk 是他们的唯一标识符。

          [https://stackoverflow.com/a/8578840][1]

          【讨论】:

            猜你喜欢
            • 2011-02-14
            • 1970-01-01
            • 1970-01-01
            • 2012-04-02
            • 2013-06-12
            • 2014-10-09
            • 2022-12-05
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多