Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- использование
- imports([
- "/js/src/supports/supports_html5.js"
- ],
- function (){
- alert('test');
- },
- function (err){
- alert(err);
- });
- */
- //код
- var registrImport = {};
- registrImport["/js/kernel/importer/importer.js"] = 0;
- (function(){
- registrImportUpdate("/js/kernel/package/package.js");
- var script = document.createElement('script');
- script.src = "/js/kernel/package/package.js";
- script.async = false;
- script.defer = true;
- document.head.appendChild(script);
- script.onerror = function() {
- alert("Ошибка при загрузке системного пакета package.js");
- };
- });
- function imports(arr, onSuccess, onError){
- var count = arrCount(arr);
- var coutLoad = 0;
- arr.forEach(function(item) {
- coutLoad++;
- if (registrImport[item] == undefined){
- loadScript(item, onSuccess, onError, count, coutLoad);
- } else {
- console.info(item + " загружен ранее.");
- }
- });
- }
- function arrCount(arr){
- var count = 0;
- arr.forEach(function(){
- count++;
- });
- return count;
- }
- function loadScript(url, onSuccess, onError, count, coutLoad){
- registrImportUpdate(url);
- var script = document.createElement('script');
- script.src = url;
- script.async = false;
- script.defer = true;
- document.head.appendChild(script);
- script.onerror = function() {
- onError(url);
- };
- script.onload = function() {
- if(count == coutLoad){
- onSuccess();
- }
- };
- }
- function registrImportUpdate(url){
- registrImport[url] = 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement