【问题标题】:Add defer tag to a existing script tag将 defer 标签添加到现有的脚本标签
【发布时间】:2016-07-05 18:18:17
【问题描述】:

我在页面上有一些标签脚本。对于特定的脚本标签,我想使用 jQuery 添加“延迟”标签。

<script src="/path/to/JS" type="text/javascript"></script>

由于 CMS 限制的原因,我无法在添加脚本时进行更改。尽管我可以在页面就绪/加载时运行 jquery。

有没有办法在页面加载时使用 Jquery 读取 src 并添加 defer 标签?

<script src="/path/to/JS" type="text/javascript" defer></script>

【问题讨论】:

  • 除了我在回答中所写的内容之外,如果您知道您使用的 CMS 与其说是工具相比更像是障碍,那么您可能需要考虑替代方案。跨度>

标签: jquery ready


【解决方案1】:

您可以在页面加载后使用 jQuery 获取脚本:

$(window).load(function() {
    $.getScript('/path/to/JS');
});

或者如果你想插入 DOM obj:

$(window).ready(function() {
    var s = document.createElement('script');

    s.type = 'text/javascript';
    s.src = '/path/to/JS';

    $('body').append(s);
});

【讨论】:

    【解决方案2】:

    我不确定您是否完全了解 defer 的作用。 jQuery 的就绪事件触发器被触发 具有 defer 属性的时间点脚本将在

    执行

    参考:https://stackoverflow.com/a/8638598/6252717

    【讨论】:

      猜你喜欢
      • 2021-10-18
      • 1970-01-01
      • 2019-07-05
      • 2019-11-20
      • 2020-12-21
      • 2020-06-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多