代码之家  ›  专栏  ›  技术社区  ›  Norgul

脚本标记中的JS访问变量[重复]

  •  1
  • Norgul  · 技术社区  · 7 年前

    我可以将脚本标记中的变量转发到当前脚本吗?像这样:

    <script type="text/template" id="myscript" myvar="123123">
    
        var filename = document.getElementById("myscript").myvar;
    
    </script>
    
    1 回复  |  直到 7 年前
        1
  •  2
  •   CertainPerformance    7 年前

    你可以使用 document.currentScript 引用当前正在运行的 <script> 标签:

    <script type="text/javascript" id="myscript" myvar="123123">
    console.log(
      document.currentScript.getAttribute('myvar')
    );
    </script>

    另一个选项是选择脚本标记,就像选择任何元素一样, querySelector ,然后获取属性:

    <script type="text/javascript" id="myscript" myvar="123123">
    console.log(
      document.querySelector('#myscript').getAttribute('myvar')
    );
    </script>

    但在使用自定义属性时,使用 数据- 属性:

    <script type="text/javascript" id="myscript" data-myvar="123123">
    console.log(
      document.currentScript.dataset.myvar
    );
    </script>