使用async属性创建脚本标记

Sea*_*son 2 javascript jquery

我正在注入一个这样的脚本:

var script = $('<script>', {
    type: 'text/javascript',
    async: true,
    src: 'https://script.js'
});

$('script:first').before(script);
Run Code Online (Sandbox Code Playgroud)

这会生成如下标记:

<script type="text/javascript" async="async" src="https://script.js"></script>
Run Code Online (Sandbox Code Playgroud)

我更喜欢以下语法:

<script type="text/javascript" async src="https://script.js"></script>
Run Code Online (Sandbox Code Playgroud)

将选项传递给jQuery DOM元素创建者时是否支持此功能?或者,我应该使用纯JavaScript来实现这一目标吗?

小智 14

您可以使用普通JS设置属性.通过jQuery完成它将自动填充值.

var script = $('<script>', {
    type: 'text/javascript',
    src: 'https://script.js'
});

script[0].setAttribute("async", "");

$('script:first').before(script);
Run Code Online (Sandbox Code Playgroud)