我通过动态添加脚本来加载iframe。但是没有定义引用错误为$

时间:2018-09-24 12:07:38

标签: javascript iframe referenceerror dynamic-script-loading

添加jquery脚本后,我正在调用该函数。但仍然出现参考错误

<script>
    window.onload = function(){
        AddScript("https://cdn.syncfusion.com/js/assets/external/jquery-1.11.3.min.js");

        $(function () { //Error throws while executing this line
            //My code here
        });
    }

    function AddScript(source)
   {
      var head= document.getElementsByTagName('head')[0];
      var script= document.createElement('script');
      script.src= source;
      head.appendChild(script);
   }
</script>

2 个答案:

答案 0 :(得分:0)

由于执行了JavaScript asynchronously,因此在JS尝试使用jQuery Object之前$ is not defined无法加载脚本。您需要使用类似promises的东西。

此链接可以为您提供帮助:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise

答案 1 :(得分:0)

我认为这不是问题。这应该在示例级别进行处理,因为您直接添加了外部脚本,而不必等待从CDN加载它。

https://humanwhocodes.com/blog/2009/07/28/the-best-way-to-load-external-javascript/