javascript - 将 "nomodule"属性动态添加到 <script nomodules src ="abc.com">

标签 javascript ecmascript-6

我想像这样动态生成脚本标签: .

对于“异步”和“延迟”,我知道我们可以执行以下操作: 我们可以像下面那样做“s.async=true”或“s.defer=true”。

  function script(url) {
            var s = document.createElement('script');

            s.async = true;
            s.src = url; 
            console.log(s);
            var x = document.getElementsByTagName('head')[0];
            x.appendChild(s);
          }

获取动态生成的标签,例如 <script async src="abc.com"></script>

但是对于“nomodules”,我没有得到想要的结果。 我尝试执行“s.nomodule=true”但无济于事。 我尝试执行以下操作。

 function script(url) {
            var s = document.createElement('script');

            s.nomodule = true;
            s.src = url; 
            console.log(s);
            var x = document.getElementsByTagName('head')[0];
            x.appendChild(s);
          }

但我只得到了<script src="abc.com"></script>

我怎样才能得到这样的结果

<script nomodule src="abc.com"></script>动态地。

最佳答案

该属性称为 noModule .与 HTML 不同,JavaScript 区分大小写!

function script(url) {
    var s = document.createElement('script');

    s.noModule = true;
//      ^
    s.src = url; 
    console.log(s);
    var x = document.getElementsByTagName('head')[0];
    x.appendChild(s);
}

或者,s.setAttribute("nomodule", "") 也可以。

关于javascript - 将 "nomodule"属性动态添加到 &lt;script nomodules src ="abc.com">,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54480305/

相关文章:

javascript - 选项标签的宽度

javascript - 在页面渲染之前执行函数

javascript - [].__proto__ === Array.prototype//=== [Symbol(Symbol.unscopables) : Object]?

javascript - 使用数组 javascript 中多个对象的值构建 map

javascript - FB.Data.query 具有更好的性能

javascript,使用鼠标控制球的运动

javascript - 意见 : in HTML, 可能存在重复 ID 或非标准属性?

javascript - 重构对象数组

javascript - 如何在一个字符串中使用 lodash 过滤器和映射

javascript - 如何使用变量实例化类