LoadScript

一个用于按顺序加载外部js的脚本的库

이 스크립트는 직접 설치해서 쓰는 게 아닙니다. 다른 스크립트가 메타 명령 // @require https://update.greatest.deepsurf.us/scripts/10108/54092/LoadScript.js(으)로 포함하여 쓰는 라이브러리입니다.

질문, 리뷰하거나, 이 스크립트를 신고하세요.
// ==UserScript==
// @name        LoadScript
// @namespace   brambles
// @version     1.2
// @grant       none
// ==/UserScript==
  var LoadScript = function LoadScript(urls, callback) {
    var _loadScript = arguments.callee;
    var head = document.head;
    var script = document.createElement('script');
    script.type = 'text/javascript';
    script.async = 'true';
    script.className = 'loadscript';
    script.setAttribute('charset', 'utf-8');

    if (typeof urls === 'string') {
      var urls = [
        urls
      ];
    }
    if (!Array.isArray(urls)) {
      throw 'type error';
    }
    if (urls.length > 1) {
      script.onload = script.onerror = function () {
        script.onload = script.onerror = null;
        _loadScript(urls.slice(1), callback);
        
      };
    } 
    else {
      script.onload = script.onerror = function(){
          script.onload = script.onerror = null;
          callback();
      };
    }
    script.src = urls[0];
    head.insertBefore(script, head.firstChild);
  };