繁体   English   中英

在函数调用上加载外部Javascript

[英]Load external Javascript on function call

我想知道如何从函数中将外部Javascript加载到我的文档中。

这是一种方式:

function loadDaFun() {
   var script = document.createElement('script');
   script.src = '/path/to/your/script.js';
   var head = document.getElementsByTagName("head")[0];
   head.appendChild(script);
}

@seth的答案是完全正确的,但您不需要将插入的script元素保留在DOM上,您可以在加载后立即将其删除,并且您可能还想知道插入的脚本何时准备好使用,例如你可以:

function loadScript(url, completeCallback) {
   var script = document.createElement('script'), done = false,
       head = document.getElementsByTagName("head")[0];
   script.src = url;
   script.onload = script.onreadystatechange = function(){
     if ( !done && (!this.readyState ||
          this.readyState == "loaded" || this.readyState == "complete") ) {
       done = true;
       completeCallback();

      // IE memory leak
      script.onload = script.onreadystatechange = null;
      head.removeChild( script );
    }
  };
  head.appendChild(script);
}

用法:

loadScript("http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js",
            function () { alert('jQuery has been loaded.'); });

使用AJAX获取它,然后使用eval()代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM