spscript-b
Version:
ShareP0oint Rest Api Wrappers
33 lines (32 loc) • 1.36 kB
JavaScript
export var loadCSS = function (url) {
var link = document.createElement("link");
link.setAttribute("rel", "stylesheet");
link.setAttribute("type", "text/css");
link.setAttribute("href", url);
document.querySelector("head").appendChild(link);
};
export var loadScript = function (url) {
return new Promise(function (resolve, reject) {
var scriptTag = window.document.createElement("script");
var firstScriptTag = document.getElementsByTagName('script')[0];
scriptTag.async = true;
firstScriptTag.parentNode.insertBefore(scriptTag, firstScriptTag);
scriptTag.onload = scriptTag.onreadystatechange = function (arg, isAbort) {
// if its been aborted, readyState is gone, or readyState is in a 'done' status
if (isAbort || !scriptTag.readyState || /loaded|complete/.test(scriptTag.readyState)) {
//clean up
scriptTag.onload = scriptTag.onreadystatechange = null;
scriptTag = undefined;
// resolve/reject the promise
if (!isAbort)
resolve();
else
reject;
}
};
scriptTag.src = url;
});
};
export var loadScripts = function (urls) {
return Promise.all(urls.map(loadScript));
};